{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "source": [
        "<font color=\"#a9a56c\" size=2> **@Author: Arif Kasim Rozani - (Team Operation Badar)** </font>"
      ],
      "metadata": {
        "id": "38_QpUXJOAII"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "# **What is a Module in Python?**\n",
        "\n",
        "A module in Python is a file that contains Python code (functions, classes, variables, or even runnable code) and is used to organize and reuse code efficiently.\n",
        "\n",
        "* A module is simply a .py file that can be imported and used in other Python programs.\n",
        "\n",
        "* Modules help keep the code modular, readable, and maintainable.\n",
        "* Python has built-in modules (like math, random, os) and also allows users to create custom modules."
      ],
      "metadata": {
        "id": "Fj7Y1Nye1MPO"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Types of Modules in Python**\n",
        "\n",
        "### **1. Built-in Modules (Standard Library)**\n",
        "\n",
        "  * Pre-installed modules in Python.\n",
        "  * Example: math, random, os, sys\n",
        "\n",
        "\n",
        "### **Example usage:**\n",
        "\n"
      ],
      "metadata": {
        "id": "TKQyFjd01it1"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "import math\n",
        "print(math.sqrt(25))  # Output: 5.0"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "nNvYgZDv2Zzk",
        "outputId": "8d7787cc-8492-4983-bfcd-dec144124693"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "5.0\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **2.  User-Defined Modules (Custom Modules)**\n",
        "\n",
        "  * Any Python file (.py) you create can be used as a module.\n",
        "\n",
        "\n",
        "### **Example:**\n",
        "\n",
        "* Create a file called mymodule.py: `(use VSCode/Cursor on local computer)`"
      ],
      "metadata": {
        "id": "LOXqj5Dm2iDE"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def add(a, b):\n",
        "    return a + b"
      ],
      "metadata": {
        "id": "DbIkNSAIDhqf"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "source": [
        "* Import and use it in another script: `(use VSCode/Cursor on local computer)`"
      ],
      "metadata": {
        "id": "FqqBbY3uDqp4"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "import mymodule\n",
        "print(mymodule.add(5, 3))  # Output: 8"
      ],
      "metadata": {
        "id": "-29y_ZqrDwkf"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **3.  External Modules (Third-party Libraries)**\n",
        "\n",
        "* Installed via pip (pip install module_name).\n",
        "* Example: numpy, pandas, requests\n",
        "* Example usage:\n"
      ],
      "metadata": {
        "id": "CeDYwaxxEBaQ"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "!pip install requests"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "r7hpZnLrEZEn",
        "outputId": "ae5572a8-dccc-4ad6-87c8-29652fa62254"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Requirement already satisfied: requests in /usr/local/lib/python3.11/dist-packages (2.32.3)\n",
            "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.11/dist-packages (from requests) (3.4.1)\n",
            "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/dist-packages (from requests) (3.10)\n",
            "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.11/dist-packages (from requests) (2.3.0)\n",
            "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/dist-packages (from requests) (2025.1.31)\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import requests\n",
        "response = requests.get(\"https://www.example.com\")\n",
        "print(response.status_code)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "BIO8CWiYEWIn",
        "outputId": "ccf95226-1c8d-4958-9d96-eac524e37237"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "200\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **How to Import a Module in Python?**\n",
        "\n",
        "Python provides several ways to import modules:\n",
        "\n",
        "### **1.  Basic Import**"
      ],
      "metadata": {
        "id": "NecnfuueEx2-"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "import math\n",
        "print(math.pi)  # Output: 3.141592653589793"
      ],
      "metadata": {
        "id": "VrxcusfBE7j2"
      },
      "execution_count": null,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **2.  Import with Alias (as)**"
      ],
      "metadata": {
        "id": "6xrxg2WKE-ut"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "import numpy as np\n",
        "print(np.array([1, 2, 3]))"
      ],
      "metadata": {
        "id": "jyx_J88eFG_O",
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "outputId": "336d20a4-accd-44ef-c236-32eaf48dc42e"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "[1 2 3]\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **3. Import Specific Functions or Variables (from ... import ...)**\n",
        "\n"
      ],
      "metadata": {
        "id": "U-dnzJQ8FKj2"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "from math import sqrt, pi\n",
        "print(sqrt(16))  # Output: 4.0\n",
        "print(pi)        # Output: 3.141592653589793"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "IDBN6YcvFSgm",
        "outputId": "0a9ef151-14f1-4843-ee46-cb308af7d05a"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "4.0\n",
            "3.141592653589793\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "from math import sqrt as s, pi as p\n",
        "\n",
        "print(s(16))\n",
        "print(p )"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "Tk0T20rHo7fR",
        "outputId": "561c8143-120e-49ff-f1a0-c2856c8db734"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "4.0\n",
            "3.141592653589793\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **4. Import Everything (from module import *) (Not recommended for large modules)**  "
      ],
      "metadata": {
        "id": "ELExQcWMFW2t"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "from math import * # wild card\n",
        "print(sin(0))  # Output: 0.0"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "_4gefU8BGBy-",
        "outputId": "e28ca9da-d88f-4a2e-fe98-519b84a557ef"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "0.0\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Advantages of Using Modules**\n",
        "\n",
        "✔ **Code Reusability** – Write once, use anywhere.\n",
        "\n",
        "✔ **Organization** – Keep related functions together.\n",
        "\n",
        "✔ **Namespace Management** – Prevents variable conflicts.\n",
        "\n",
        "✔ **Faster Development** – Use existing libraries instead of writing everything from scratch."
      ],
      "metadata": {
        "id": "jp5t0VGNGMIm"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "#**Understanding Functions in Python**\n",
        "\n",
        "\n",
        "A Python function is a block of organized, reusable code that is used to perform a single, related action. Functions provide better modularity for your application and a high degree of code reusing.\n",
        "\n",
        "\n",
        "\n"
      ],
      "metadata": {
        "id": "dZtBN0udbIrF"
      }
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "hlUxAx16ab7G",
        "outputId": "02f6006c-0288-4b68-9816-dadf6f9fce19"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Hello! World\n"
          ]
        }
      ],
      "source": [
        "# This is a global function because it's defined at the top level of the module.\n",
        "def my_function():\n",
        "  print(\"Hello! World\")\n",
        "\n",
        "# The function can be called from anywhere in the module.\n",
        "my_function()"
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "A global function in Python is a function that’s defined in the main body of a module, rather than inside another function or class. This means that the function is available throughout the module, and if the module is imported into another file, the function can be accessed from there as well.\n",
        "\n",
        "## **Key Points:**\n",
        "\n",
        "### **Scope:**\n",
        "\n",
        "* Global functions have a module-level scope. They can be called by any code within that module, and if imported, they can be used elsewhere too.\n",
        "\n",
        "### **Usage:**\n",
        "\n",
        "* Global functions are typically used to perform tasks that don't depend on a specific object's state. They’re ideal for utility functions, helper functions, or any code that can be reused in various parts of your program."
      ],
      "metadata": {
        "id": "-mZDi3ADz1C_"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Types of Python Functions**\n",
        "\n",
        "Python provides the following types of functions −\n",
        "\n",
        "\n",
        "1)\t**Built-in functions**\n",
        "\n",
        "-   Python's standard library includes number of built-in functions. Some of Python's built-in functions are print(), int(), len(), sum(), etc. These functions are always available, as they are loaded into computer's memory as soon as you start Python interpreter.\n",
        "\n",
        "2)  **Functions defined in built-in modules**\n",
        "\n",
        "-   The standard library also bundles a number of modules. Each module defines a group of functions. These functions are not readily available. You need to import them into the memory from their respective modules.\n",
        "\n",
        "3)  **User-defined functions**\n",
        "\n",
        "-   In addition to the built-in functions and functions in the built-in modules, you can also create your own functions. These functions are called user-defined functions."
      ],
      "metadata": {
        "id": "6XpNHwiqbhYa"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "# Built-in functions\n",
        "print(\"Hello! World\")"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "B-WDQ0gocbHB",
        "outputId": "f277032d-5311-4bc6-93e2-0ac066608a71"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Hello! World\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# Functions defined in built-in modules\n",
        "import random\n",
        "print(random.random())"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "Vf7GHqjJcQEa",
        "outputId": "4749c08e-22f0-47d5-d167-8ca3fcd0fe24"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "0.8194296546403051\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# User-defined functions\n",
        "def my_function():\n",
        "  print(\"Hello! Operation Badar\")\n",
        "\n",
        "my_function()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "7BmRgMeJcsmq",
        "outputId": "81e99c02-704f-4589-a378-88d34e087d7d"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Hello! Operation Badar\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Syntax to Define a Python Function**\n",
        "\n",
        "```python\n",
        "def function_name( parameters ):\n",
        "   \"function_docstring\"\n",
        "   function_suite\n",
        "   return [expression]\n",
        "   ```"
      ],
      "metadata": {
        "id": "fBrrIH9YdIg6"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def greetings():\n",
        "   \"This is docstring of greetings function\"\n",
        "   greet = 'Hello World!'\n",
        "   return greet\n",
        "\n",
        "message = greetings()\n",
        "print(message)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "fg4ANVsFdiOV",
        "outputId": "cf1bccc7-b065-46c8-aee1-b4ca032cd4a0"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Hello World!\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Pass by Reference vs Value**\n",
        "\n",
        "Python uses pass by object reference. Immutable objects (e.g. integers) are unchanged, while mutable objects (e.g. lists) are modified. Examples:\n",
        "* Integers: `x = 5` remains `5` after modification.\n",
        "* Lists: `x = [1, 2, 3]` becomes `[1, 2, 3, 4]` after appending `4`.\n",
        "\n",
        "In this example, `x` remains unchanged after the `modify_value` function, because it's an immutable integer. However, `lst` is modified after the `modify_list` function, because it's a mutable list."
      ],
      "metadata": {
        "id": "HLtvo5oXeecg"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def modify_value(x):\n",
        "    x = 10\n",
        "    print(\"Within function:\", x)\n",
        "\n",
        "# Immutable object (integer)\n",
        "x = 5\n",
        "print(\"Original:\", x)\n",
        "modify_value(x)\n",
        "print(\"After function:\", x)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "rLrf-T4Wga1e",
        "outputId": "86703ed3-e205-4d60-d313-4044ee56a7f2"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Original: 5\n",
            "Within function: 10\n",
            "After function: 5\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "def modify_list(lst):\n",
        "    lst.append(4)\n",
        "    print(\"Within function: \", lst, \" - ID:\", id(lst))\n",
        "\n",
        "# Mutable object (list)\n",
        "lst = [1, 2, 3]\n",
        "print(\"Original:\", lst, \" - ID:\", id(lst))\n",
        "modify_list(lst)\n",
        "print(\"After function:\", lst, \" - ID:\", id(lst))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "Vrk3j1a7gr4c",
        "outputId": "c84ef728-6a3b-434c-efaa-d22b4a590edb"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Original: [1, 2, 3]  - ID: 136570433898880\n",
            "Within function:  [1, 2, 3, 4]  - ID: 136570433898880\n",
            "After function: [1, 2, 3, 4]  - ID: 136570433898880\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Function Arguments**\n",
        "\n",
        "Function arguments are the values or variables passed into a function when it is called."
      ],
      "metadata": {
        "id": "y1Wp-3jChz2c"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def greetings(name):\n",
        "   \"This is docstring of greetings function\"\n",
        "   print (\"Hello {}\".format(name))\n",
        "   return\n",
        "\n",
        "greetings(\"Ali\")\n",
        "greetings(\"Omar\")\n",
        "greetings(\"Usman\")"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "0OmahMZViAxL",
        "outputId": "e367b542-c150-4225-f8a9-7ed0c929bd42"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Hello Ali\n",
            "Hello Omar\n",
            "Hello Usman\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Keyword Arguments**\n",
        "\n",
        "Keyword arguments are related to the function calls. When you use keyword arguments in a function call, the caller identifies the arguments by the parameter name. This allows you to skip arguments or place them out of order because the Python interpreter is able to use the keywords provided to match the values with parameters."
      ],
      "metadata": {
        "id": "psU1S0rOi0Tj"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def printinfo( name, age ):\n",
        "   \"This prints a passed info into this function\"\n",
        "   print (\"Name: \", name)\n",
        "   print (\"Age \", age)\n",
        "   return;\n",
        "\n",
        "# Now you can call printinfo function\n",
        "printinfo( age=50, name=\"Arif\" )\n",
        "#printinfo(50, \"Arif\" )"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "7Lq7Bzwbi4dL",
        "outputId": "27751b53-77ac-44bc-fddb-0f68b8ce6971"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Name:  Arif\n",
            "Age  50\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "def add(x: int,y: int=0) -> float:\n",
        "   return float(x + y)\n",
        "\n",
        "print(float(add(10,20)))\n",
        "\n",
        "print(add(y=50.0, x=2.0)) # type hints are not enforced in Python\n",
        "\n",
        "print(add(x=5))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "h_jP86v985Yo",
        "outputId": "d7ceb446-9571-42f1-b7e3-3c24c1d17ade"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "30.0\n",
            "52.0\n",
            "5.0\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **\\*  unpacking iterables**\n",
        "\n",
        "In Python, the * operator is used for unpacking iterables (like lists, tuples, or sets) into individual elements. When you use * before a list (or any iterable) in a function call, it unpacks the list and passes its elements as separate positional arguments to the function.\n",
        "\n",
        "Example:"
      ],
      "metadata": {
        "id": "DFEsqtdKzGpR"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def my_sum(*nums):\n",
        "  print(type(nums),\", \", nums)\n",
        "\n",
        "  return sum(nums)\n",
        "\n",
        "print(\"Sum     = \", my_sum(1,2,3,4,5,8,5),\"\\n\")\n",
        "print(\"Sum *[] = \", my_sum(*[1,2,3,4,5,8,5]), \"\\n\") # *  unpacking list\n",
        "print(\"Sum *() = \", my_sum(*(1,2,3,4,5,8,5))) # *  unpacking tuple\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "JMuwN_DX-aAG",
        "outputId": "1cb987c6-71de-46f1-b076-b2e4caf38891"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "<class 'tuple'> ,  (1, 2, 3, 4, 5, 8, 5)\n",
            "Sum     =  28 \n",
            "\n",
            "<class 'tuple'> ,  (1, 2, 3, 4, 5, 8, 5)\n",
            "Sum *[] =  28 \n",
            "\n",
            "<class 'tuple'> ,  (1, 2, 3, 4, 5, 8, 5)\n",
            "Sum *() =  28\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Default Arguments**\n",
        "\n",
        "A default argument is an argument that assumes a default value if a value is not provided in the function call for that argument."
      ],
      "metadata": {
        "id": "mCCFxsnIjtNy"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def printinfo( name, age = 35 ):\n",
        "   \"This prints a passed info into this function\"\n",
        "   print (\"Name: \", name)\n",
        "   print (\"Age \", age)\n",
        "   return;\n",
        "\n",
        "# Now you can call printinfo function\n",
        "printinfo( age=50, name=\"Arif\" )\n",
        "printinfo( name=\"Arif\" )"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "JAdolJSDjzci",
        "outputId": "9d92a0e9-b0b5-4b70-c29a-4aba75c05a46"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Name:  Arif\n",
            "Age  50\n",
            "Name:  Arif\n",
            "Age  35\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Positional-only arguments**\n",
        "\n",
        "Those arguments that can only be specified by their position in the function call is called as `Positional-only arguments`. They are defined by placing a `\"/\"` in the function's parameter list after all positional-only parameters.\n",
        "\n",
        "Example\n",
        "\n",
        "  - In the following example, we have defined two positional-only arguments namely `\"x\"` and `\"y\"`. This method should be called with positional arguments in the order in which the arguments are declared, otherwise, we will get an error."
      ],
      "metadata": {
        "id": "3fTO5DtqkZT6"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def posFun(x, y, /, z):\n",
        "    print(x + y + z)\n",
        "\n",
        "print(\"Evaluating positional-only arguments: \")\n",
        "posFun(1, 2, z=3)\n",
        "\n",
        "# uncomment to see error\n",
        "#posFun(x=1, y=2, z=3)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "YpJqPVHbkc_8",
        "outputId": "d6e57cc4-53ef-48ab-cc36-2e116783aa33"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Evaluating positional-only arguments: \n",
            "6\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# Run to see error\n",
        "posFun(x=1, y=2, z=3)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 158
        },
        "id": "NqHN9Umldx1j",
        "outputId": "27289cf0-5b37-4dfa-864f-079c92904521"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "error",
          "ename": "NameError",
          "evalue": "name 'posFun' is not defined",
          "traceback": [
            "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
            "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
            "\u001b[0;32m<ipython-input-14-90cb35748f4a>\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;31m# Run to see error\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mposFun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mz\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
            "\u001b[0;31mNameError\u001b[0m: name 'posFun' is not defined"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Error**\n",
        "\n",
        "```python\n",
        "posFun(x=1, y=2, z=3)\n",
        "```\n",
        "\n",
        "This means that arguments before the '/' must be specified by their position in the function call and cannot be passed using keyword arguments.\n",
        "\n",
        "`x` and `y` are declared before the '/', making them positional-only. When you call `posFun(x=1, y=2, z=3)`, you're attempting to pass `x` and `y` as keyword arguments, violating this rule and hence the `TypeError` is raised."
      ],
      "metadata": {
        "id": "Te05rGsDlGqJ"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Keyword-only arguments**\n",
        "\n",
        "Those arguments that must be specified by their `name` while calling the function is known as `Keyword-only arguments`. They are defined by placing an `asterisk (\"*\")` in the function's parameter list before any keyword-only parameters. This type of argument can only be passed to a function as a keyword argument, not a positional argument."
      ],
      "metadata": {
        "id": "lJdMYJojl87A"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def posFun(*, num1, num2, num3):\n",
        "    print(num1 * num2 * num3)\n",
        "\n",
        "print(\"Evaluating keyword-only arguments: \")\n",
        "posFun(num1=6, num2=8, num3=5)\n",
        "\n",
        "posFun(num3=6, num1=8, num2=5)\n",
        "\n",
        "\n",
        "# TypeError: posFun() takes 0 positional arguments but 3 were given\n",
        "#posFun(6, 8, 5)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "MfSEgmXLmAIv",
        "outputId": "10e5e9de-ead8-4edd-9346-e8e1b919c498"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Evaluating keyword-only arguments: \n",
            "240\n",
            "240\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Arbitrary or Variable-length Arguments**\n",
        "\n",
        "You may need to process a function for more arguments than you specified while defining the function. These arguments are called variable-length arguments and are not named in the function definition, unlike required and default arguments.\n",
        "\n",
        "Syntax for a function with non-keyword variable arguments is this −\n",
        "\n",
        "```python\n",
        "  def functionname([formal_args,] *var_args_tuple ):\n",
        "    \"function_docstring\"\n",
        "    function_suite\n",
        "    return [expression]\n",
        "\n",
        "```"
      ],
      "metadata": {
        "id": "evRAuwqXriLk"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def printinfo( arg1, *vartuple ):\n",
        "   \"This prints a variable passed arguments\"\n",
        "   print (\"Output is: \")\n",
        "   print (arg1)\n",
        "   for var in vartuple:\n",
        "      print (\"*\",var)\n",
        "   return;\n",
        "\n",
        "# Now you can call printinfo function\n",
        "printinfo( 10 )\n",
        "printinfo( 70, 60, 50, 70, 90 )"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "ZIzK8XEJr1JS",
        "outputId": "e44956ca-c11e-44bd-ad25-231602bf336e"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Output is: \n",
            "10\n",
            "Output is: \n",
            "70\n",
            "* 60\n",
            "* 50\n",
            "* 70\n",
            "* 90\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Python Function with Return Value**\n",
        "\n",
        "The return keyword as the last statement in function definition indicates end of function block, and the program flow goes back to the calling function. ***`Although reduced indent after the last statement in the block also implies return but using explicit return is a good practice`***.\n",
        "\n",
        "Along with the flow control, the function can also return value of an expression to the calling function. The value of returned expression can be stored in a variable for further processing."
      ],
      "metadata": {
        "id": "gFA-oMJSszuV"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def add(x,y):\n",
        "   z=x+y\n",
        "   return z\n",
        "\n",
        "a=10\n",
        "b=20\n",
        "result = add(a,b)\n",
        "\n",
        "print (\"a = {} b = {} a+b = {}\".format(a, b, result))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "eEAPGJGys-wJ",
        "outputId": "a237d0f7-dc9c-411d-f848-480de6f7d615"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "a = 10 b = 20 a+b = 30\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **The Anonymous Functions**\n",
        "\n",
        "The functions are called anonymous when they are not declared in the standard manner by using the def keyword. Instead, they are defined using the `lambda keyword`.\n",
        "\n",
        "### **Syntax**\n",
        "\n",
        "The syntax of lambda functions contains only a single statement, which is as follows −\n",
        "\n",
        "```python\n",
        "lambda [arg1 [,arg2,.....argn]]:expression\n",
        "```"
      ],
      "metadata": {
        "id": "Tbs4wxH7tUt6"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def add_two(x, y):\n",
        "  return x + y\n",
        "\n",
        "my_lambda = lambda x, y:  x + y;\n",
        "\n",
        "print(my_lambda(1,2))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "BSmxnJFkGgQF",
        "outputId": "08ff4dc4-5e17-4575-a22d-b93a6723cb74"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "3\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# prompt: sort by value dictionary using lambda function\n",
        "\n",
        "my_dict = {\"apple\": 5, \"banana\": 2, \"cherry\": 8, \"date\": 1}\n",
        "\n",
        "sorted_dict = dict(sorted(my_dict.items(), key=lambda item: item[1]))\n",
        "\n",
        "sorted_dict"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "HSH4SqCJHRu2",
        "outputId": "8932c1be-b92a-41ca-ee95-82827a6c01da"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "{'date': 1, 'banana': 2, 'apple': 5, 'cherry': 8}"
            ]
          },
          "metadata": {},
          "execution_count": 46
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# Function definition is here\n",
        "sum = lambda arg1, arg2: arg1 + arg2;\n",
        "\n",
        "# Now you can call sum as a function\n",
        "print (\"Value of total : \", sum( 10, 20 ))\n",
        "print (\"Value of total : \", sum( 50, 20 ))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "MartwaCctsN5",
        "outputId": "b3f48947-ca04-4297-b528-6a3031ce2c85"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Value of total :  30\n",
            "Value of total :  70\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Scope of Variables**\n",
        "\n",
        "All variables in a program may not be accessible at all locations in that program. This depends on where you have declared a variable.\n",
        "\n",
        "The scope of a variable determines the portion of the program where you can access a particular identifier. There are two basic scopes of variables in Python −\n",
        "\n",
        "  - `Global variables`\n",
        "\n",
        "  - `Local variables`\n",
        "\n",
        "\n",
        "**Global vs. Local variables**\n",
        "\n",
        "Variables that are defined inside a function body have a local scope, and those defined outside have a global scope.\n",
        "\n",
        "This means that local variables can be accessed only inside the function in which they are declared, whereas global variables can be accessed throughout the program body by all functions. When you call a function, the variables declared inside it are brought into scope."
      ],
      "metadata": {
        "id": "pbVO0BHGt5On"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "total = 0; # This is global variable.\n",
        "# Function definition is here\n",
        "def sum( arg1, arg2 ):\n",
        "   # Add both the parameters and return them.\"\n",
        "   total = arg1 + arg2; # Here total is local variable.\n",
        "   print (\"Inside the function local total : \", total)\n",
        "   return total;\n",
        "\n",
        "# Now you can call sum function\n",
        "sum( 10, 20 );\n",
        "print (\"Outside the function global total : \", total)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "DeEC3odxuWpP",
        "outputId": "786f6b47-dded-439b-ffe2-23beb3e11749"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Inside the function local total :  30\n",
            "Outside the function global total :  0\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "##**Arbitrary Keyword Arguments, **kwargs**\n",
        "\n",
        "If you do not know how many keyword arguments that will be passed into your function, add two asterisk: ** before the parameter name in the function definition.\n",
        "\n",
        "This way the function will receive a dictionary of arguments, and can access the items accordingly:\n",
        "\n"
      ],
      "metadata": {
        "id": "fvTE_h4a9TWD"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def my_function(**student):\n",
        "  print(\"\\nHis last name is \" + student[\"lname\"])\n",
        "\n",
        "  for key, value in student.items():\n",
        "    print(key, value)\n",
        "\n",
        "  print(student)\n",
        "\n",
        "my_function(fname = \"Ali\", lname = \"Osman\")\n",
        "\n",
        "my_function(fname = \"Ali\", lname = \"Osman\", course = \"Python - 101\", day=\"Saturday\", time=\"1400 - 1800\")\n",
        "\n",
        "my_dict = {\"fname\": \"Arif\", \"lname\": \"Rozani\", \"course\":\"101 - 201\", \"day\":\"Saturday | Sunday\", \"role\":\"Student\"}\n",
        "\n",
        "#my_function(my_dict) # uncomment to see TypeError\n",
        "my_function(**my_dict) # use ** to unpack the dictionary"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "IK8Khz0g9iOp",
        "outputId": "ae0c55d7-b5c6-4645-d140-141c406f3f3b"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "\n",
            "His last name is Osman\n",
            "fname Ali\n",
            "lname Osman\n",
            "{'fname': 'Ali', 'lname': 'Osman'}\n",
            "\n",
            "His last name is Osman\n",
            "fname Ali\n",
            "lname Osman\n",
            "course Python - 101\n",
            "day Saturday\n",
            "time 1400 - 1800\n",
            "{'fname': 'Ali', 'lname': 'Osman', 'course': 'Python - 101', 'day': 'Saturday', 'time': '1400 - 1800'}\n",
            "\n",
            "His last name is Rozani\n",
            "fname Arif\n",
            "lname Rozani\n",
            "course 101 - 201\n",
            "day Saturday | Sunday\n",
            "role Student\n",
            "{'fname': 'Arif', 'lname': 'Rozani', 'course': '101 - 201', 'day': 'Saturday | Sunday', 'role': 'Student'}\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "##**Generator Function**\n",
        "\n",
        "A generator function in Python is a special type of function that allows you to iterate over a sequence of values `without storing the entire sequence in memory`. **Instead of returning a single value using return, a generator function uses the `yield` keyword to produce a series of values, `one at a time`, `on-the-fly`**. This makes generator functions highly `memory-efficient` for working with `large` or `infinite sequences`."
      ],
      "metadata": {
        "id": "ITBsWAOhJYBn"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Key Features of Generator Functions**\n",
        "\n",
        "1. **Lazy Evaluation**: Values are generated only when needed, not all at once.\n",
        "\n",
        "2.  **Memory Efficiency**: Only one value is stored in memory at a time.\n",
        "3.  **Iterable**: Generator functions return a generator object, which can be iterated over using a for loop or functions like next().\n",
        "4.  **Resumable**: The state of the generator function is saved between yield calls, allowing it to resume execution from where it left off."
      ],
      "metadata": {
        "id": "hlq0xv10g_4A"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Syntax of a Generator Function**\n",
        "\n",
        "A generator function is defined like a normal function but uses the yield keyword instead of return.\n",
        "\n",
        "```python\n",
        "def generator_function():\n",
        "    yield value\n",
        "\n",
        "```"
      ],
      "metadata": {
        "id": "nvxl1t1LhPJ4"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **How Generator Functions Work**\n",
        "\n",
        "1.  When a generator function is called, it returns a generator object without executing the function body.\n",
        "\n",
        "2.  The function body executes only when the generator object is iterated over (e.g., using a for loop or next()).\n",
        "3.  When the yield statement is encountered, the function pauses and returns the yielded value. The function’s state (e.g., local variables) is saved.\n",
        "4.  The function resumes execution from where it left off the next time next() is called or the generator is iterated over."
      ],
      "metadata": {
        "id": "e_IQUBNOiOEn"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **Example 1: Simple Generator Function**"
      ],
      "metadata": {
        "id": "B_60Kz4ziqlA"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def simple_generator():\n",
        "    yield 1\n",
        "    yield 2\n",
        "    yield 3\n",
        "\n",
        "# Create a generator object\n",
        "gen = simple_generator()\n",
        "\n",
        "print(gen, \" : \", type(gen))\n",
        "\n",
        "# Iterate over the generator\n",
        "for value in gen:\n",
        "    print(value, \" : \", type(value))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "GfJpQkIQitYm",
        "outputId": "b00730f3-6a8a-4f9d-b75e-d7b3cda45768"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "<generator object simple_generator at 0x7fc33c3783b0>  :  <class 'generator'>\n",
            "1  :  <class 'int'>\n",
            "2  :  <class 'int'>\n",
            "3  :  <class 'int'>\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Lets produce an error:**\n",
        "\n",
        "**Once the generator is exhausted, calling next() will raise a StopIteration exception.**"
      ],
      "metadata": {
        "id": "E9NHfQiO6QHD"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "print(next(gen)) #error: StopIteration"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 141
        },
        "id": "WtGWD7qK6GE-",
        "outputId": "1bf9e6f6-e262-449f-860d-3b0f21a390f4"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "error",
          "ename": "StopIteration",
          "evalue": "",
          "traceback": [
            "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
            "\u001b[0;31mStopIteration\u001b[0m                             Traceback (most recent call last)",
            "\u001b[0;32m<ipython-input-16-be0d7584d73f>\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnext\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mgen\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
            "\u001b[0;31mStopIteration\u001b[0m: "
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "### **Example 2: Infinite Sequence**\n",
        "\n",
        "Generators are useful for generating infinite sequences since they don’t store all values in memory.\n",
        "\n",
        "### **How It Works:**\n",
        "\n",
        "1.  infinite_sequence():\n",
        "    * This function starts with num = 0.\n",
        "\n",
        "    * Inside an infinite while True loop, it yields num and then increments it by 1.\n",
        "    * Since yield pauses execution, it remembers the state and resumes from there when next() is called.\n",
        "\n",
        "2.  Creating the Generator:\n",
        "\n",
        "    * gen = infinite_sequence() initializes the generator.\n",
        "    \n",
        "\n",
        "3.  Printing First 5 Numbers:\n",
        "\n",
        "    * Using next(gen), we retrieve values from the generator five times inside a loop.\n",
        "\n",
        "    * The next time we call next(gen), execution resumes from where it left off."
      ],
      "metadata": {
        "id": "opESCzVakwK9"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def infinite_sequence():\n",
        "    num = 0\n",
        "    while True:\n",
        "        yield num # Since yield pauses execution, it remembers the state and resumes from there when next() is called.\n",
        "        num += 1\n",
        "\n",
        "# Create a generator object\n",
        "gen = infinite_sequence() #initializes the generator.\n",
        "\n",
        "# Print the first 5 numbers, _ is a throw away variable\n",
        "for _ in range(5):\n",
        "    print(next(gen)) # The next time we call next(gen), execution resumes from where it left off."
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "trxaNoSgk_-m",
        "outputId": "5ec172f0-9556-470b-94b5-90076056fa11"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "0\n",
            "1\n",
            "2\n",
            "3\n",
            "4\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "def infinite_loop(): #without yield it become infinite\n",
        "   num = 0\n",
        "   while True:\n",
        "       #yield num   # with yield it become generator without yield its a infinite loop\n",
        "       num += 1\n",
        "       print(\"infinite_loop() : num = \", num)\n",
        "\n",
        "infinite_loop()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        },
        "collapsed": true,
        "id": "XVIjI3kQmv-s",
        "outputId": "97a1dee3-3352-48b4-9505-d96edd38fd56"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "infinite_loop() : num =  1\n",
            "infinite_loop() : num =  2\n",
            "infinite_loop() : num =  3\n",
            "infinite_loop() : num =  4\n",
            "infinite_loop() : num =  5\n",
            "infinite_loop() : num =  6\n",
            "infinite_loop() : num =  7\n",
            "infinite_loop() : num =  8\n",
            "infinite_loop() : num =  9\n",
            "infinite_loop() : num =  10\n",
            "infinite_loop() : num =  11\n",
            "infinite_loop() : num =  12\n",
            "infinite_loop() : num =  13\n",
            "infinite_loop() : num =  14\n",
            "infinite_loop() : num =  15\n",
            "infinite_loop() : num =  16\n",
            "infinite_loop() : num =  17\n",
            "infinite_loop() : num =  18\n",
            "infinite_loop() : num =  19\n",
            "infinite_loop() : num =  20\n",
            "infinite_loop() : num =  21\n",
            "infinite_loop() : num =  22\n",
            "infinite_loop() : num =  23\n",
            "infinite_loop() : num =  24\n",
            "infinite_loop() : num =  25\n",
            "infinite_loop() : num =  26\n",
            "infinite_loop() : num =  27\n",
            "infinite_loop() : num =  28\n",
            "infinite_loop() : num =  29\n",
            "infinite_loop() : num =  30\n",
            "infinite_loop() : num =  31\n",
            "infinite_loop() : num =  32\n",
            "infinite_loop() : num =  33\n",
            "infinite_loop() : num =  34\n",
            "infinite_loop() : num =  35\n",
            "infinite_loop() : num =  36\n",
            "infinite_loop() : num =  37\n",
            "infinite_loop() : num =  38\n",
            "infinite_loop() : num =  39\n",
            "infinite_loop() : num =  40\n",
            "infinite_loop() : num =  41\n",
            "infinite_loop() : num =  42\n",
            "infinite_loop() : num =  43\n",
            "infinite_loop() : num =  44\n",
            "infinite_loop() : num =  45\n",
            "infinite_loop() : num =  46\n",
            "infinite_loop() : num =  47\n",
            "infinite_loop() : num =  48\n",
            "infinite_loop() : num =  49\n",
            "infinite_loop() : num =  50\n",
            "infinite_loop() : num =  51\n",
            "infinite_loop() : num =  52\n",
            "infinite_loop() : num =  53\n",
            "infinite_loop() : num =  54\n",
            "infinite_loop() : num =  55\n",
            "infinite_loop() : num =  56\n",
            "infinite_loop() : num =  57\n",
            "infinite_loop() : num =  58\n",
            "infinite_loop() : num =  59\n",
            "infinite_loop() : num =  60\n",
            "infinite_loop() : num =  61\n",
            "infinite_loop() : num =  62\n",
            "infinite_loop() : num =  63\n",
            "infinite_loop() : num =  64\n",
            "infinite_loop() : num =  65\n",
            "infinite_loop() : num =  66\n",
            "infinite_loop() : num =  67\n",
            "infinite_loop() : num =  68\n",
            "infinite_loop() : num =  69\n",
            "infinite_loop() : num =  70\n",
            "infinite_loop() : num =  71\n",
            "infinite_loop() : num =  72\n",
            "infinite_loop() : num =  73\n",
            "infinite_loop() : num =  74\n",
            "infinite_loop() : num =  75\n",
            "infinite_loop() : num =  76\n",
            "infinite_loop() : num =  77\n",
            "infinite_loop() : num =  78\n",
            "infinite_loop() : num =  79\n",
            "infinite_loop() : num =  80\n",
            "infinite_loop() : num =  81\n",
            "infinite_loop() : num =  82\n",
            "infinite_loop() : num =  83\n",
            "infinite_loop() : num =  84\n",
            "infinite_loop() : num =  85\n",
            "infinite_loop() : num =  86\n",
            "infinite_loop() : num =  87\n",
            "infinite_loop() : num =  88\n",
            "infinite_loop() : num =  89\n",
            "infinite_loop() : num =  90\n",
            "infinite_loop() : num =  91\n",
            "infinite_loop() : num =  92\n",
            "infinite_loop() : num =  93\n",
            "infinite_loop() : num =  94\n",
            "infinite_loop() : num =  95\n",
            "infinite_loop() : num =  96\n",
            "infinite_loop() : num =  97\n",
            "infinite_loop() : num =  98\n",
            "infinite_loop() : num =  99\n",
            "infinite_loop() : num =  100\n",
            "infinite_loop() : num =  101\n",
            "infinite_loop() : num =  102\n",
            "infinite_loop() : num =  103\n",
            "infinite_loop() : num =  104\n",
            "infinite_loop() : num =  105\n",
            "infinite_loop() : num =  106\n",
            "infinite_loop() : num =  107\n",
            "infinite_loop() : num =  108\n",
            "infinite_loop() : num =  109\n",
            "infinite_loop() : num =  110\n",
            "infinite_loop() : num =  111\n",
            "infinite_loop() : num =  112\n",
            "infinite_loop() : num =  113\n",
            "infinite_loop() : num =  114\n",
            "infinite_loop() : num =  115\n",
            "infinite_loop() : num =  116\n",
            "infinite_loop() : num =  117\n",
            "infinite_loop() : num =  118\n",
            "infinite_loop() : num =  119\n",
            "infinite_loop() : num =  120\n",
            "infinite_loop() : num =  121\n",
            "infinite_loop() : num =  122\n",
            "infinite_loop() : num =  123\n",
            "infinite_loop() : num =  124\n",
            "infinite_loop() : num =  125\n",
            "infinite_loop() : num =  126\n",
            "infinite_loop() : num =  127\n",
            "infinite_loop() : num =  128\n",
            "infinite_loop() : num =  129\n",
            "infinite_loop() : num =  130\n",
            "infinite_loop() : num =  131\n",
            "infinite_loop() : num =  132\n",
            "infinite_loop() : num =  133\n",
            "infinite_loop() : num =  134\n",
            "infinite_loop() : num =  135\n",
            "infinite_loop() : num =  136\n",
            "infinite_loop() : num =  137\n",
            "infinite_loop() : num =  138\n",
            "infinite_loop() : num =  139\n",
            "infinite_loop() : num =  140\n",
            "infinite_loop() : num =  141\n",
            "infinite_loop() : num =  142\n",
            "infinite_loop() : num =  143\n",
            "infinite_loop() : num =  144\n",
            "infinite_loop() : num =  145\n",
            "infinite_loop() : num =  146\n",
            "infinite_loop() : num =  147\n",
            "infinite_loop() : num =  148\n",
            "infinite_loop() : num =  149\n",
            "infinite_loop() : num =  150\n",
            "infinite_loop() : num =  151\n",
            "infinite_loop() : num =  152\n",
            "infinite_loop() : num =  153\n",
            "infinite_loop() : num =  154\n",
            "infinite_loop() : num =  155\n",
            "infinite_loop() : num =  156\n",
            "infinite_loop() : num =  157\n",
            "infinite_loop() : num =  158\n",
            "infinite_loop() : num =  159\n",
            "infinite_loop() : num =  160\n",
            "infinite_loop() : num =  161\n",
            "infinite_loop() : num =  162\n",
            "infinite_loop() : num =  163\n",
            "infinite_loop() : num =  164\n",
            "infinite_loop() : num =  165\n",
            "infinite_loop() : num =  166\n",
            "infinite_loop() : num =  167\n",
            "infinite_loop() : num =  168\n",
            "infinite_loop() : num =  169\n",
            "infinite_loop() : num =  170\n",
            "infinite_loop() : num =  171\n",
            "infinite_loop() : num =  172\n",
            "infinite_loop() : num =  173\n",
            "infinite_loop() : num =  174\n",
            "infinite_loop() : num =  175\n",
            "infinite_loop() : num =  176\n",
            "infinite_loop() : num =  177\n",
            "infinite_loop() : num =  178\n",
            "infinite_loop() : num =  179\n",
            "infinite_loop() : num =  180\n",
            "infinite_loop() : num =  181\n",
            "infinite_loop() : num =  182\n",
            "infinite_loop() : num =  183\n",
            "infinite_loop() : num =  184\n",
            "infinite_loop() : num =  185\n",
            "infinite_loop() : num =  186\n",
            "infinite_loop() : num =  187\n",
            "infinite_loop() : num =  188\n",
            "infinite_loop() : num =  189\n",
            "infinite_loop() : num =  190\n",
            "infinite_loop() : num =  191\n",
            "infinite_loop() : num =  192\n",
            "infinite_loop() : num =  193\n",
            "infinite_loop() : num =  194\n",
            "infinite_loop() : num =  195\n",
            "infinite_loop() : num =  196\n",
            "infinite_loop() : num =  197\n",
            "infinite_loop() : num =  198\n",
            "infinite_loop() : num =  199\n",
            "infinite_loop() : num =  200\n",
            "infinite_loop() : num =  201\n",
            "infinite_loop() : num =  202\n",
            "infinite_loop() : num =  203\n",
            "infinite_loop() : num =  204\n",
            "infinite_loop() : num =  205\n",
            "infinite_loop() : num =  206\n",
            "infinite_loop() : num =  207\n",
            "infinite_loop() : num =  208\n",
            "infinite_loop() : num =  209\n",
            "infinite_loop() : num =  210\n",
            "infinite_loop() : num =  211\n",
            "infinite_loop() : num =  212\n",
            "infinite_loop() : num =  213\n",
            "infinite_loop() : num =  214\n",
            "infinite_loop() : num =  215\n",
            "infinite_loop() : num =  216\n",
            "infinite_loop() : num =  217\n",
            "infinite_loop() : num =  218\n",
            "infinite_loop() : num =  219\n",
            "infinite_loop() : num =  220\n",
            "infinite_loop() : num =  221\n",
            "infinite_loop() : num =  222\n",
            "infinite_loop() : num =  223\n",
            "infinite_loop() : num =  224\n",
            "infinite_loop() : num =  225\n",
            "infinite_loop() : num =  226\n",
            "infinite_loop() : num =  227\n",
            "infinite_loop() : num =  228\n",
            "infinite_loop() : num =  229\n",
            "infinite_loop() : num =  230\n",
            "infinite_loop() : num =  231\n",
            "infinite_loop() : num =  232\n",
            "infinite_loop() : num =  233\n",
            "infinite_loop() : num =  234\n",
            "infinite_loop() : num =  235\n",
            "infinite_loop() : num =  236\n",
            "infinite_loop() : num =  237\n",
            "infinite_loop() : num =  238\n",
            "infinite_loop() : num =  239\n",
            "infinite_loop() : num =  240\n",
            "infinite_loop() : num =  241\n",
            "infinite_loop() : num =  242\n",
            "infinite_loop() : num =  243\n",
            "infinite_loop() : num =  244\n",
            "infinite_loop() : num =  245\n",
            "infinite_loop() : num =  246\n",
            "infinite_loop() : num =  247\n",
            "infinite_loop() : num =  248\n",
            "infinite_loop() : num =  249\n",
            "infinite_loop() : num =  250\n",
            "infinite_loop() : num =  251\n",
            "infinite_loop() : num =  252\n",
            "infinite_loop() : num =  253\n",
            "infinite_loop() : num =  254\n",
            "infinite_loop() : num =  255\n",
            "infinite_loop() : num =  256\n",
            "infinite_loop() : num =  257\n",
            "infinite_loop() : num =  258\n",
            "infinite_loop() : num =  259\n",
            "infinite_loop() : num =  260\n",
            "infinite_loop() : num =  261\n",
            "infinite_loop() : num =  262\n",
            "infinite_loop() : num =  263\n",
            "infinite_loop() : num =  264\n",
            "infinite_loop() : num =  265\n",
            "infinite_loop() : num =  266\n",
            "infinite_loop() : num =  267\n",
            "infinite_loop() : num =  268\n",
            "infinite_loop() : num =  269\n",
            "infinite_loop() : num =  270\n",
            "infinite_loop() : num =  271\n",
            "infinite_loop() : num =  272\n",
            "infinite_loop() : num =  273\n",
            "infinite_loop() : num =  274\n",
            "infinite_loop() : num =  275\n",
            "infinite_loop() : num =  276\n",
            "infinite_loop() : num =  277\n",
            "infinite_loop() : num =  278\n",
            "infinite_loop() : num =  279\n",
            "infinite_loop() : num =  280\n",
            "infinite_loop() : num =  281\n",
            "infinite_loop() : num =  282\n",
            "infinite_loop() : num =  283\n",
            "infinite_loop() : num =  284\n",
            "infinite_loop() : num =  285\n",
            "infinite_loop() : num =  286\n",
            "infinite_loop() : num =  287\n",
            "infinite_loop() : num =  288\n",
            "infinite_loop() : num =  289\n",
            "infinite_loop() : num =  290\n",
            "infinite_loop() : num =  291\n",
            "infinite_loop() : num =  292\n",
            "infinite_loop() : num =  293\n",
            "infinite_loop() : num =  294\n",
            "infinite_loop() : num =  295\n",
            "infinite_loop() : num =  296\n",
            "infinite_loop() : num =  297\n",
            "infinite_loop() : num =  298\n",
            "infinite_loop() : num =  299\n",
            "infinite_loop() : num =  300\n",
            "infinite_loop() : num =  301\n",
            "infinite_loop() : num =  302\n",
            "infinite_loop() : num =  303\n",
            "infinite_loop() : num =  304\n",
            "infinite_loop() : num =  305\n",
            "infinite_loop() : num =  306\n",
            "infinite_loop() : num =  307\n",
            "infinite_loop() : num =  308\n",
            "infinite_loop() : num =  309\n",
            "infinite_loop() : num =  310\n",
            "infinite_loop() : num =  311\n",
            "infinite_loop() : num =  312\n",
            "infinite_loop() : num =  313\n",
            "infinite_loop() : num =  314\n",
            "infinite_loop() : num =  315\n",
            "infinite_loop() : num =  316\n",
            "infinite_loop() : num =  317\n",
            "infinite_loop() : num =  318\n",
            "infinite_loop() : num =  319\n",
            "infinite_loop() : num =  320\n",
            "infinite_loop() : num =  321\n",
            "infinite_loop() : num =  322\n",
            "infinite_loop() : num =  323\n",
            "infinite_loop() : num =  324\n",
            "infinite_loop() : num =  325\n",
            "infinite_loop() : num =  326\n",
            "infinite_loop() : num =  327\n",
            "infinite_loop() : num =  328\n",
            "infinite_loop() : num =  329\n",
            "infinite_loop() : num =  330\n",
            "infinite_loop() : num =  331\n",
            "infinite_loop() : num =  332\n",
            "infinite_loop() : num =  333\n",
            "infinite_loop() : num =  334\n",
            "infinite_loop() : num =  335\n",
            "infinite_loop() : num =  336\n",
            "infinite_loop() : num =  337\n",
            "infinite_loop() : num =  338\n",
            "infinite_loop() : num =  339\n",
            "infinite_loop() : num =  340\n",
            "infinite_loop() : num =  341\n",
            "infinite_loop() : num =  342\n",
            "infinite_loop() : num =  343\n",
            "infinite_loop() : num =  344\n",
            "infinite_loop() : num =  345\n",
            "infinite_loop() : num =  346\n",
            "infinite_loop() : num =  347\n",
            "infinite_loop() : num =  348\n",
            "infinite_loop() : num =  349\n",
            "infinite_loop() : num =  350\n",
            "infinite_loop() : num =  351\n",
            "infinite_loop() : num =  352\n",
            "infinite_loop() : num =  353\n",
            "infinite_loop() : num =  354\n",
            "infinite_loop() : num =  355\n",
            "infinite_loop() : num =  356\n",
            "infinite_loop() : num =  357\n",
            "infinite_loop() : num =  358\n",
            "infinite_loop() : num =  359\n",
            "infinite_loop() : num =  360\n",
            "infinite_loop() : num =  361\n",
            "infinite_loop() : num =  362\n",
            "infinite_loop() : num =  363\n",
            "infinite_loop() : num =  364\n",
            "infinite_loop() : num =  365\n",
            "infinite_loop() : num =  366\n",
            "infinite_loop() : num =  367\n",
            "infinite_loop() : num =  368\n",
            "infinite_loop() : num =  369\n",
            "infinite_loop() : num =  370\n",
            "infinite_loop() : num =  371\n",
            "infinite_loop() : num =  372\n",
            "infinite_loop() : num =  373\n",
            "infinite_loop() : num =  374\n",
            "infinite_loop() : num =  375\n",
            "infinite_loop() : num =  376\n",
            "infinite_loop() : num =  377\n",
            "infinite_loop() : num =  378\n",
            "infinite_loop() : num =  379\n",
            "infinite_loop() : num =  380\n",
            "infinite_loop() : num =  381\n",
            "infinite_loop() : num =  382\n",
            "infinite_loop() : num =  383\n",
            "infinite_loop() : num =  384\n",
            "infinite_loop() : num =  385\n",
            "infinite_loop() : num =  386\n",
            "infinite_loop() : num =  387\n",
            "infinite_loop() : num =  388\n",
            "infinite_loop() : num =  389\n",
            "infinite_loop() : num =  390\n",
            "infinite_loop() : num =  391\n",
            "infinite_loop() : num =  392\n",
            "infinite_loop() : num =  393\n",
            "infinite_loop() : num =  394\n",
            "infinite_loop() : num =  395\n",
            "infinite_loop() : num =  396\n",
            "infinite_loop() : num =  397\n",
            "infinite_loop() : num =  398\n",
            "infinite_loop() : num =  399\n",
            "infinite_loop() : num =  400\n",
            "infinite_loop() : num =  401\n",
            "infinite_loop() : num =  402\n",
            "infinite_loop() : num =  403\n",
            "infinite_loop() : num =  404\n",
            "infinite_loop() : num =  405\n",
            "infinite_loop() : num =  406\n",
            "infinite_loop() : num =  407\n",
            "infinite_loop() : num =  408\n",
            "infinite_loop() : num =  409\n",
            "infinite_loop() : num =  410\n",
            "infinite_loop() : num =  411\n",
            "infinite_loop() : num =  412\n",
            "infinite_loop() : num =  413\n",
            "infinite_loop() : num =  414\n",
            "infinite_loop() : num =  415\n",
            "infinite_loop() : num =  416\n",
            "infinite_loop() : num =  417\n",
            "infinite_loop() : num =  418\n",
            "infinite_loop() : num =  419\n",
            "infinite_loop() : num =  420\n",
            "infinite_loop() : num =  421\n",
            "infinite_loop() : num =  422\n",
            "infinite_loop() : num =  423\n",
            "infinite_loop() : num =  424\n",
            "infinite_loop() : num =  425\n",
            "infinite_loop() : num =  426\n",
            "infinite_loop() : num =  427\n",
            "infinite_loop() : num =  428\n",
            "infinite_loop() : num =  429\n",
            "infinite_loop() : num =  430\n",
            "infinite_loop() : num =  431\n",
            "infinite_loop() : num =  432\n",
            "infinite_loop() : num =  433\n",
            "infinite_loop() : num =  434\n",
            "infinite_loop() : num =  435\n",
            "infinite_loop() : num =  436\n",
            "infinite_loop() : num =  437\n",
            "infinite_loop() : num =  438\n",
            "infinite_loop() : num =  439\n",
            "infinite_loop() : num =  440\n",
            "infinite_loop() : num =  441\n",
            "infinite_loop() : num =  442\n",
            "infinite_loop() : num =  443\n",
            "infinite_loop() : num =  444\n",
            "infinite_loop() : num =  445\n",
            "infinite_loop() : num =  446\n",
            "infinite_loop() : num =  447\n",
            "infinite_loop() : num =  448\n",
            "infinite_loop() : num =  449\n",
            "infinite_loop() : num =  450\n",
            "infinite_loop() : num =  451\n",
            "infinite_loop() : num =  452\n",
            "infinite_loop() : num =  453\n",
            "infinite_loop() : num =  454\n",
            "infinite_loop() : num =  455\n",
            "infinite_loop() : num =  456\n",
            "infinite_loop() : num =  457\n",
            "infinite_loop() : num =  458\n",
            "infinite_loop() : num =  459\n",
            "infinite_loop() : num =  460\n",
            "infinite_loop() : num =  461\n",
            "infinite_loop() : num =  462\n",
            "infinite_loop() : num =  463\n",
            "infinite_loop() : num =  464\n",
            "infinite_loop() : num =  465\n",
            "infinite_loop() : num =  466\n",
            "infinite_loop() : num =  467\n",
            "infinite_loop() : num =  468\n",
            "infinite_loop() : num =  469\n",
            "infinite_loop() : num =  470\n",
            "infinite_loop() : num =  471\n",
            "infinite_loop() : num =  472\n",
            "infinite_loop() : num =  473\n",
            "infinite_loop() : num =  474\n",
            "infinite_loop() : num =  475\n",
            "infinite_loop() : num =  476\n",
            "infinite_loop() : num =  477\n",
            "infinite_loop() : num =  478\n",
            "infinite_loop() : num =  479\n",
            "infinite_loop() : num =  480\n",
            "infinite_loop() : num =  481\n",
            "infinite_loop() : num =  482\n",
            "infinite_loop() : num =  483\n",
            "infinite_loop() : num =  484\n",
            "infinite_loop() : num =  485\n",
            "infinite_loop() : num =  486\n",
            "infinite_loop() : num =  487\n",
            "infinite_loop() : num =  488\n",
            "infinite_loop() : num =  489\n",
            "infinite_loop() : num =  490\n",
            "infinite_loop() : num =  491\n",
            "infinite_loop() : num =  492\n",
            "infinite_loop() : num =  493\n",
            "infinite_loop() : num =  494\n",
            "infinite_loop() : num =  495\n",
            "infinite_loop() : num =  496\n",
            "infinite_loop() : num =  497\n",
            "infinite_loop() : num =  498\n",
            "infinite_loop() : num =  499\n",
            "infinite_loop() : num =  500\n",
            "infinite_loop() : num =  501\n",
            "infinite_loop() : num =  502\n",
            "infinite_loop() : num =  503\n",
            "infinite_loop() : num =  504\n",
            "infinite_loop() : num =  505\n",
            "infinite_loop() : num =  506\n",
            "infinite_loop() : num =  507\n",
            "infinite_loop() : num =  508\n",
            "infinite_loop() : num =  509\n",
            "infinite_loop() : num =  510\n",
            "infinite_loop() : num =  511\n",
            "infinite_loop() : num =  512\n",
            "infinite_loop() : num =  513\n",
            "infinite_loop() : num =  514\n",
            "infinite_loop() : num =  515\n",
            "infinite_loop() : num =  516\n",
            "infinite_loop() : num =  517\n",
            "infinite_loop() : num =  518\n",
            "infinite_loop() : num =  519\n",
            "infinite_loop() : num =  520\n",
            "infinite_loop() : num =  521\n",
            "infinite_loop() : num =  522\n",
            "infinite_loop() : num =  523\n",
            "infinite_loop() : num =  524\n",
            "infinite_loop() : num =  525\n",
            "infinite_loop() : num =  526\n",
            "infinite_loop() : num =  527\n",
            "infinite_loop() : num =  528\n",
            "infinite_loop() : num =  529\n",
            "infinite_loop() : num =  530\n",
            "infinite_loop() : num =  531\n",
            "infinite_loop() : num =  532\n",
            "infinite_loop() : num =  533\n",
            "infinite_loop() : num =  534\n",
            "infinite_loop() : num =  535\n",
            "infinite_loop() : num =  536\n",
            "infinite_loop() : num =  537\n",
            "infinite_loop() : num =  538\n",
            "infinite_loop() : num =  539\n",
            "infinite_loop() : num =  540\n",
            "infinite_loop() : num =  541\n",
            "infinite_loop() : num =  542\n",
            "infinite_loop() : num =  543\n",
            "infinite_loop() : num =  544\n",
            "infinite_loop() : num =  545\n",
            "infinite_loop() : num =  546\n",
            "infinite_loop() : num =  547\n",
            "infinite_loop() : num =  548\n",
            "infinite_loop() : num =  549\n",
            "infinite_loop() : num =  550\n",
            "infinite_loop() : num =  551\n",
            "infinite_loop() : num =  552\n",
            "infinite_loop() : num =  553\n",
            "infinite_loop() : num =  554\n",
            "infinite_loop() : num =  555\n",
            "infinite_loop() : num =  556\n",
            "infinite_loop() : num =  557\n",
            "infinite_loop() : num =  558\n",
            "infinite_loop() : num =  559\n",
            "infinite_loop() : num =  560\n",
            "infinite_loop() : num =  561\n",
            "infinite_loop() : num =  562\n",
            "infinite_loop() : num =  563\n",
            "infinite_loop() : num =  564\n",
            "infinite_loop() : num =  565\n",
            "infinite_loop() : num =  566\n",
            "infinite_loop() : num =  567\n",
            "infinite_loop() : num =  568\n",
            "infinite_loop() : num =  569\n",
            "infinite_loop() : num =  570\n",
            "infinite_loop() : num =  571\n",
            "infinite_loop() : num =  572\n",
            "infinite_loop() : num =  573\n",
            "infinite_loop() : num =  574\n",
            "infinite_loop() : num =  575\n",
            "infinite_loop() : num =  576\n",
            "infinite_loop() : num =  577\n",
            "infinite_loop() : num =  578\n",
            "infinite_loop() : num =  579\n",
            "infinite_loop() : num =  580\n",
            "infinite_loop() : num =  581\n",
            "infinite_loop() : num =  582\n",
            "infinite_loop() : num =  583\n",
            "infinite_loop() : num =  584\n",
            "infinite_loop() : num =  585\n",
            "infinite_loop() : num =  586\n",
            "infinite_loop() : num =  587\n",
            "infinite_loop() : num =  588\n",
            "infinite_loop() : num =  589\n",
            "infinite_loop() : num =  590\n",
            "infinite_loop() : num =  591\n",
            "infinite_loop() : num =  592\n",
            "infinite_loop() : num =  593\n",
            "infinite_loop() : num =  594\n",
            "infinite_loop() : num =  595\n",
            "infinite_loop() : num =  596\n",
            "infinite_loop() : num =  597\n",
            "infinite_loop() : num =  598\n",
            "infinite_loop() : num =  599\n",
            "infinite_loop() : num =  600\n",
            "infinite_loop() : num =  601\n",
            "infinite_loop() : num =  602\n",
            "infinite_loop() : num =  603\n",
            "infinite_loop() : num =  604\n",
            "infinite_loop() : num =  605\n",
            "infinite_loop() : num =  606\n",
            "infinite_loop() : num =  607\n",
            "infinite_loop() : num =  608\n",
            "infinite_loop() : num =  609\n",
            "infinite_loop() : num =  610\n",
            "infinite_loop() : num =  611\n",
            "infinite_loop() : num =  612\n",
            "infinite_loop() : num =  613\n",
            "infinite_loop() : num =  614\n",
            "infinite_loop() : num =  615\n",
            "infinite_loop() : num =  616\n",
            "infinite_loop() : num =  617\n",
            "infinite_loop() : num =  618\n",
            "infinite_loop() : num =  619\n",
            "infinite_loop() : num =  620\n",
            "infinite_loop() : num =  621\n",
            "infinite_loop() : num =  622\n",
            "infinite_loop() : num =  623\n",
            "infinite_loop() : num =  624\n",
            "infinite_loop() : num =  625\n",
            "infinite_loop() : num =  626\n",
            "infinite_loop() : num =  627\n",
            "infinite_loop() : num =  628\n",
            "infinite_loop() : num =  629\n",
            "infinite_loop() : num =  630\n",
            "infinite_loop() : num =  631\n",
            "infinite_loop() : num =  632\n",
            "infinite_loop() : num =  633\n",
            "infinite_loop() : num =  634\n",
            "infinite_loop() : num =  635\n",
            "infinite_loop() : num =  636\n",
            "infinite_loop() : num =  637\n",
            "infinite_loop() : num =  638\n",
            "infinite_loop() : num =  639\n",
            "infinite_loop() : num =  640\n",
            "infinite_loop() : num =  641\n",
            "infinite_loop() : num =  642\n",
            "infinite_loop() : num =  643\n",
            "infinite_loop() : num =  644\n",
            "infinite_loop() : num =  645\n",
            "infinite_loop() : num =  646\n",
            "infinite_loop() : num =  647\n",
            "infinite_loop() : num =  648\n",
            "infinite_loop() : num =  649\n",
            "infinite_loop() : num =  650\n",
            "infinite_loop() : num =  651\n",
            "infinite_loop() : num =  652\n",
            "infinite_loop() : num =  653\n",
            "infinite_loop() : num =  654\n",
            "infinite_loop() : num =  655\n",
            "infinite_loop() : num =  656\n",
            "infinite_loop() : num =  657\n",
            "infinite_loop() : num =  658\n",
            "infinite_loop() : num =  659\n",
            "infinite_loop() : num =  660\n",
            "infinite_loop() : num =  661\n",
            "infinite_loop() : num =  662\n",
            "infinite_loop() : num =  663\n",
            "infinite_loop() : num =  664\n",
            "infinite_loop() : num =  665\n",
            "infinite_loop() : num =  666\n",
            "infinite_loop() : num =  667\n",
            "infinite_loop() : num =  668\n",
            "infinite_loop() : num =  669\n",
            "infinite_loop() : num =  670\n",
            "infinite_loop() : num =  671\n",
            "infinite_loop() : num =  672\n",
            "infinite_loop() : num =  673\n",
            "infinite_loop() : num =  674\n",
            "infinite_loop() : num =  675\n",
            "infinite_loop() : num =  676\n",
            "infinite_loop() : num =  677\n",
            "infinite_loop() : num =  678\n",
            "infinite_loop() : num =  679\n",
            "infinite_loop() : num =  680\n",
            "infinite_loop() : num =  681\n",
            "infinite_loop() : num =  682\n",
            "infinite_loop() : num =  683\n",
            "infinite_loop() : num =  684\n",
            "infinite_loop() : num =  685\n",
            "infinite_loop() : num =  686\n",
            "infinite_loop() : num =  687\n",
            "infinite_loop() : num =  688\n",
            "infinite_loop() : num =  689\n",
            "infinite_loop() : num =  690\n",
            "infinite_loop() : num =  691\n",
            "infinite_loop() : num =  692\n",
            "infinite_loop() : num =  693\n",
            "infinite_loop() : num =  694\n",
            "infinite_loop() : num =  695\n",
            "infinite_loop() : num =  696\n",
            "infinite_loop() : num =  697\n",
            "infinite_loop() : num =  698\n",
            "infinite_loop() : num =  699\n",
            "infinite_loop() : num =  700\n",
            "infinite_loop() : num =  701\n",
            "infinite_loop() : num =  702\n",
            "infinite_loop() : num =  703\n",
            "infinite_loop() : num =  704\n",
            "infinite_loop() : num =  705\n",
            "infinite_loop() : num =  706\n",
            "infinite_loop() : num =  707\n",
            "infinite_loop() : num =  708\n",
            "infinite_loop() : num =  709\n",
            "infinite_loop() : num =  710\n",
            "infinite_loop() : num =  711\n",
            "infinite_loop() : num =  712\n",
            "infinite_loop() : num =  713\n",
            "infinite_loop() : num =  714\n",
            "infinite_loop() : num =  715\n",
            "infinite_loop() : num =  716\n",
            "infinite_loop() : num =  717\n",
            "infinite_loop() : num =  718\n",
            "infinite_loop() : num =  719\n",
            "infinite_loop() : num =  720\n",
            "infinite_loop() : num =  721\n",
            "infinite_loop() : num =  722\n",
            "infinite_loop() : num =  723\n",
            "infinite_loop() : num =  724\n",
            "infinite_loop() : num =  725\n",
            "infinite_loop() : num =  726\n",
            "infinite_loop() : num =  727\n",
            "infinite_loop() : num =  728\n",
            "infinite_loop() : num =  729\n",
            "infinite_loop() : num =  730\n",
            "infinite_loop() : num =  731\n",
            "infinite_loop() : num =  732\n",
            "infinite_loop() : num =  733\n",
            "infinite_loop() : num =  734\n",
            "infinite_loop() : num =  735\n",
            "infinite_loop() : num =  736\n",
            "infinite_loop() : num =  737\n",
            "infinite_loop() : num =  738\n",
            "infinite_loop() : num =  739\n",
            "infinite_loop() : num =  740\n",
            "infinite_loop() : num =  741\n",
            "infinite_loop() : num =  742\n",
            "infinite_loop() : num =  743\n",
            "infinite_loop() : num =  744\n",
            "infinite_loop() : num =  745\n",
            "infinite_loop() : num =  746\n",
            "infinite_loop() : num =  747\n",
            "infinite_loop() : num =  748\n",
            "infinite_loop() : num =  749\n",
            "infinite_loop() : num =  750\n",
            "infinite_loop() : num =  751\n",
            "infinite_loop() : num =  752\n",
            "infinite_loop() : num =  753\n",
            "infinite_loop() : num =  754\n",
            "infinite_loop() : num =  755\n",
            "infinite_loop() : num =  756\n",
            "infinite_loop() : num =  757\n",
            "infinite_loop() : num =  758\n",
            "infinite_loop() : num =  759\n",
            "infinite_loop() : num =  760\n",
            "infinite_loop() : num =  761\n",
            "infinite_loop() : num =  762\n",
            "infinite_loop() : num =  763\n",
            "infinite_loop() : num =  764\n",
            "infinite_loop() : num =  765\n",
            "infinite_loop() : num =  766\n",
            "infinite_loop() : num =  767\n",
            "infinite_loop() : num =  768\n",
            "infinite_loop() : num =  769\n",
            "infinite_loop() : num =  770\n",
            "infinite_loop() : num =  771\n",
            "infinite_loop() : num =  772\n",
            "infinite_loop() : num =  773\n",
            "infinite_loop() : num =  774\n",
            "infinite_loop() : num =  775\n",
            "infinite_loop() : num =  776\n",
            "infinite_loop() : num =  777\n",
            "infinite_loop() : num =  778\n",
            "infinite_loop() : num =  779\n",
            "infinite_loop() : num =  780\n",
            "infinite_loop() : num =  781\n",
            "infinite_loop() : num =  782\n",
            "infinite_loop() : num =  783\n",
            "infinite_loop() : num =  784\n",
            "infinite_loop() : num =  785\n",
            "infinite_loop() : num =  786\n",
            "infinite_loop() : num =  787\n",
            "infinite_loop() : num =  788\n",
            "infinite_loop() : num =  789\n",
            "infinite_loop() : num =  790\n",
            "infinite_loop() : num =  791\n",
            "infinite_loop() : num =  792\n",
            "infinite_loop() : num =  793\n",
            "infinite_loop() : num =  794\n",
            "infinite_loop() : num =  795\n",
            "infinite_loop() : num =  796\n",
            "infinite_loop() : num =  797\n",
            "infinite_loop() : num =  798\n",
            "infinite_loop() : num =  799\n",
            "infinite_loop() : num =  800\n",
            "infinite_loop() : num =  801\n",
            "infinite_loop() : num =  802\n",
            "infinite_loop() : num =  803\n",
            "infinite_loop() : num =  804\n",
            "infinite_loop() : num =  805\n",
            "infinite_loop() : num =  806\n",
            "infinite_loop() : num =  807\n",
            "infinite_loop() : num =  808\n",
            "infinite_loop() : num =  809\n",
            "infinite_loop() : num =  810\n",
            "infinite_loop() : num =  811\n",
            "infinite_loop() : num =  812\n",
            "infinite_loop() : num =  813\n",
            "infinite_loop() : num =  814\n",
            "infinite_loop() : num =  815\n",
            "infinite_loop() : num =  816\n",
            "infinite_loop() : num =  817\n",
            "infinite_loop() : num =  818\n",
            "infinite_loop() : num =  819\n",
            "infinite_loop() : num =  820\n",
            "infinite_loop() : num =  821\n",
            "infinite_loop() : num =  822\n",
            "infinite_loop() : num =  823\n",
            "infinite_loop() : num =  824\n",
            "infinite_loop() : num =  825\n",
            "infinite_loop() : num =  826\n",
            "infinite_loop() : num =  827\n",
            "infinite_loop() : num =  828\n",
            "infinite_loop() : num =  829\n",
            "infinite_loop() : num =  830\n",
            "infinite_loop() : num =  831\n",
            "infinite_loop() : num =  832\n",
            "infinite_loop() : num =  833\n",
            "infinite_loop() : num =  834\n",
            "infinite_loop() : num =  835\n",
            "infinite_loop() : num =  836\n",
            "infinite_loop() : num =  837\n",
            "infinite_loop() : num =  838\n",
            "infinite_loop() : num =  839\n",
            "infinite_loop() : num =  840\n",
            "infinite_loop() : num =  841\n",
            "infinite_loop() : num =  842\n",
            "infinite_loop() : num =  843\n",
            "infinite_loop() : num =  844\n",
            "infinite_loop() : num =  845\n",
            "infinite_loop() : num =  846\n",
            "infinite_loop() : num =  847\n",
            "infinite_loop() : num =  848\n",
            "infinite_loop() : num =  849\n",
            "infinite_loop() : num =  850\n",
            "infinite_loop() : num =  851\n",
            "infinite_loop() : num =  852\n",
            "infinite_loop() : num =  853\n",
            "infinite_loop() : num =  854\n",
            "infinite_loop() : num =  855\n",
            "infinite_loop() : num =  856\n",
            "infinite_loop() : num =  857\n",
            "infinite_loop() : num =  858\n",
            "infinite_loop() : num =  859\n",
            "infinite_loop() : num =  860\n",
            "infinite_loop() : num =  861\n",
            "infinite_loop() : num =  862\n",
            "infinite_loop() : num =  863\n",
            "infinite_loop() : num =  864\n",
            "infinite_loop() : num =  865\n",
            "infinite_loop() : num =  866\n",
            "infinite_loop() : num =  867\n",
            "infinite_loop() : num =  868\n",
            "infinite_loop() : num =  869\n",
            "infinite_loop() : num =  870\n",
            "infinite_loop() : num =  871\n",
            "infinite_loop() : num =  872\n",
            "infinite_loop() : num =  873\n",
            "infinite_loop() : num =  874\n",
            "infinite_loop() : num =  875\n",
            "infinite_loop() : num =  876\n",
            "infinite_loop() : num =  877\n",
            "infinite_loop() : num =  878\n",
            "infinite_loop() : num =  879\n",
            "infinite_loop() : num =  880\n",
            "infinite_loop() : num =  881\n",
            "infinite_loop() : num =  882\n",
            "infinite_loop() : num =  883\n",
            "infinite_loop() : num =  884\n",
            "infinite_loop() : num =  885\n",
            "infinite_loop() : num =  886\n",
            "infinite_loop() : num =  887\n",
            "infinite_loop() : num =  888\n",
            "infinite_loop() : num =  889\n",
            "infinite_loop() : num =  890\n",
            "infinite_loop() : num =  891\n",
            "infinite_loop() : num =  892\n",
            "infinite_loop() : num =  893\n",
            "infinite_loop() : num =  894\n",
            "infinite_loop() : num =  895\n",
            "infinite_loop() : num =  896\n",
            "infinite_loop() : num =  897\n",
            "infinite_loop() : num =  898\n",
            "infinite_loop() : num =  899\n",
            "infinite_loop() : num =  900\n",
            "infinite_loop() : num =  901\n",
            "infinite_loop() : num =  902\n",
            "infinite_loop() : num =  903\n",
            "infinite_loop() : num =  904\n",
            "infinite_loop() : num =  905\n",
            "infinite_loop() : num =  906\n",
            "infinite_loop() : num =  907\n",
            "infinite_loop() : num =  908\n",
            "infinite_loop() : num =  909\n",
            "infinite_loop() : num =  910\n",
            "infinite_loop() : num =  911\n",
            "infinite_loop() : num =  912\n",
            "infinite_loop() : num =  913\n",
            "infinite_loop() : num =  914\n",
            "infinite_loop() : num =  915\n",
            "infinite_loop() : num =  916\n",
            "infinite_loop() : num =  917\n",
            "infinite_loop() : num =  918\n",
            "infinite_loop() : num =  919\n",
            "infinite_loop() : num =  920\n",
            "infinite_loop() : num =  921\n",
            "infinite_loop() : num =  922\n",
            "infinite_loop() : num =  923\n",
            "infinite_loop() : num =  924\n",
            "infinite_loop() : num =  925\n",
            "infinite_loop() : num =  926\n",
            "infinite_loop() : num =  927\n",
            "infinite_loop() : num =  928\n",
            "infinite_loop() : num =  929\n",
            "infinite_loop() : num =  930\n",
            "infinite_loop() : num =  931\n",
            "infinite_loop() : num =  932\n",
            "infinite_loop() : num =  933\n",
            "infinite_loop() : num =  934\n",
            "infinite_loop() : num =  935\n",
            "infinite_loop() : num =  936\n",
            "infinite_loop() : num =  937\n",
            "infinite_loop() : num =  938\n",
            "infinite_loop() : num =  939\n",
            "infinite_loop() : num =  940\n",
            "infinite_loop() : num =  941\n",
            "infinite_loop() : num =  942\n",
            "infinite_loop() : num =  943\n",
            "infinite_loop() : num =  944\n",
            "infinite_loop() : num =  945\n",
            "infinite_loop() : num =  946\n",
            "infinite_loop() : num =  947\n",
            "infinite_loop() : num =  948\n",
            "infinite_loop() : num =  949\n",
            "infinite_loop() : num =  950\n",
            "infinite_loop() : num =  951\n",
            "infinite_loop() : num =  952\n",
            "infinite_loop() : num =  953\n",
            "infinite_loop() : num =  954\n",
            "infinite_loop() : num =  955\n",
            "infinite_loop() : num =  956\n",
            "infinite_loop() : num =  957\n",
            "infinite_loop() : num =  958\n",
            "infinite_loop() : num =  959\n",
            "infinite_loop() : num =  960\n",
            "infinite_loop() : num =  961\n",
            "infinite_loop() : num =  962\n",
            "infinite_loop() : num =  963\n",
            "infinite_loop() : num =  964\n",
            "infinite_loop() : num =  965\n",
            "infinite_loop() : num =  966\n",
            "infinite_loop() : num =  967\n",
            "infinite_loop() : num =  968\n",
            "infinite_loop() : num =  969\n",
            "infinite_loop() : num =  970\n",
            "infinite_loop() : num =  971\n",
            "infinite_loop() : num =  972\n",
            "infinite_loop() : num =  973\n",
            "infinite_loop() : num =  974\n",
            "infinite_loop() : num =  975\n",
            "infinite_loop() : num =  976\n",
            "infinite_loop() : num =  977\n",
            "infinite_loop() : num =  978\n",
            "infinite_loop() : num =  979\n",
            "infinite_loop() : num =  980\n",
            "infinite_loop() : num =  981\n",
            "infinite_loop() : num =  982\n",
            "infinite_loop() : num =  983\n",
            "infinite_loop() : num =  984\n",
            "infinite_loop() : num =  985\n",
            "infinite_loop() : num =  986\n",
            "infinite_loop() : num =  987\n",
            "infinite_loop() : num =  988\n",
            "infinite_loop() : num =  989\n",
            "infinite_loop() : num =  990\n",
            "infinite_loop() : num =  991\n",
            "infinite_loop() : num =  992\n",
            "infinite_loop() : num =  993\n",
            "infinite_loop() : num =  994\n",
            "infinite_loop() : num =  995\n",
            "infinite_loop() : num =  996\n",
            "infinite_loop() : num =  997\n",
            "infinite_loop() : num =  998\n",
            "infinite_loop() : num =  999\n",
            "infinite_loop() : num =  1000\n",
            "infinite_loop() : num =  1001\n",
            "infinite_loop() : num =  1002\n",
            "infinite_loop() : num =  1003\n",
            "infinite_loop() : num =  1004\n",
            "infinite_loop() : num =  1005\n",
            "infinite_loop() : num =  1006\n",
            "infinite_loop() : num =  1007\n",
            "infinite_loop() : num =  1008\n",
            "infinite_loop() : num =  1009\n",
            "infinite_loop() : num =  1010\n",
            "infinite_loop() : num =  1011\n",
            "infinite_loop() : num =  1012\n",
            "infinite_loop() : num =  1013\n",
            "infinite_loop() : num =  1014\n",
            "infinite_loop() : num =  1015\n",
            "infinite_loop() : num =  1016\n",
            "infinite_loop() : num =  1017\n",
            "infinite_loop() : num =  1018\n",
            "infinite_loop() : num =  1019\n",
            "infinite_loop() : num =  1020\n",
            "infinite_loop() : num =  1021\n",
            "infinite_loop() : num =  1022\n",
            "infinite_loop() : num =  1023\n",
            "infinite_loop() : num =  1024\n",
            "infinite_loop() : num =  1025\n",
            "infinite_loop() : num =  1026\n",
            "infinite_loop() : num =  1027\n",
            "infinite_loop() : num =  1028\n",
            "infinite_loop() : num =  1029\n",
            "infinite_loop() : num =  1030\n",
            "infinite_loop() : num =  1031\n",
            "infinite_loop() : num =  1032\n",
            "infinite_loop() : num =  1033\n",
            "infinite_loop() : num =  1034\n",
            "infinite_loop() : num =  1035\n",
            "infinite_loop() : num =  1036\n",
            "infinite_loop() : num =  1037\n",
            "infinite_loop() : num =  1038\n",
            "infinite_loop() : num =  1039\n",
            "infinite_loop() : num =  1040\n",
            "infinite_loop() : num =  1041\n",
            "infinite_loop() : num =  1042\n",
            "infinite_loop() : num =  1043\n",
            "infinite_loop() : num =  1044\n",
            "infinite_loop() : num =  1045\n",
            "infinite_loop() : num =  1046\n",
            "infinite_loop() : num =  1047\n",
            "infinite_loop() : num =  1048\n",
            "infinite_loop() : num =  1049\n",
            "infinite_loop() : num =  1050\n",
            "infinite_loop() : num =  1051\n",
            "infinite_loop() : num =  1052\n",
            "infinite_loop() : num =  1053\n",
            "infinite_loop() : num =  1054\n",
            "infinite_loop() : num =  1055\n",
            "infinite_loop() : num =  1056\n",
            "infinite_loop() : num =  1057\n",
            "infinite_loop() : num =  1058\n",
            "infinite_loop() : num =  1059\n",
            "infinite_loop() : num =  1060\n",
            "infinite_loop() : num =  1061\n",
            "infinite_loop() : num =  1062\n",
            "infinite_loop() : num =  1063\n",
            "infinite_loop() : num =  1064\n",
            "infinite_loop() : num =  1065\n",
            "infinite_loop() : num =  1066\n",
            "infinite_loop() : num =  1067\n",
            "infinite_loop() : num =  1068\n",
            "infinite_loop() : num =  1069\n",
            "infinite_loop() : num =  1070\n",
            "infinite_loop() : num =  1071\n",
            "infinite_loop() : num =  1072\n",
            "infinite_loop() : num =  1073\n",
            "infinite_loop() : num =  1074\n",
            "infinite_loop() : num =  1075\n",
            "infinite_loop() : num =  1076\n",
            "infinite_loop() : num =  1077\n",
            "infinite_loop() : num =  1078\n",
            "infinite_loop() : num =  1079\n",
            "infinite_loop() : num =  1080\n",
            "infinite_loop() : num =  1081\n",
            "infinite_loop() : num =  1082\n",
            "infinite_loop() : num =  1083\n",
            "infinite_loop() : num =  1084\n",
            "infinite_loop() : num =  1085\n",
            "infinite_loop() : num =  1086\n",
            "infinite_loop() : num =  1087\n",
            "infinite_loop() : num =  1088\n",
            "infinite_loop() : num =  1089\n",
            "infinite_loop() : num =  1090\n",
            "infinite_loop() : num =  1091\n",
            "infinite_loop() : num =  1092\n",
            "infinite_loop() : num =  1093\n",
            "infinite_loop() : num =  1094\n",
            "infinite_loop() : num =  1095\n",
            "infinite_loop() : num =  1096\n",
            "infinite_loop() : num =  1097\n",
            "infinite_loop() : num =  1098\n",
            "infinite_loop() : num =  1099\n",
            "infinite_loop() : num =  1100\n",
            "infinite_loop() : num =  1101\n",
            "infinite_loop() : num =  1102\n",
            "infinite_loop() : num =  1103\n",
            "infinite_loop() : num =  1104\n",
            "infinite_loop() : num =  1105\n",
            "infinite_loop() : num =  1106\n",
            "infinite_loop() : num =  1107\n",
            "infinite_loop() : num =  1108\n",
            "infinite_loop() : num =  1109\n",
            "infinite_loop() : num =  1110\n",
            "infinite_loop() : num =  1111\n",
            "infinite_loop() : num =  1112\n",
            "infinite_loop() : num =  1113\n",
            "infinite_loop() : num =  1114\n",
            "infinite_loop() : num =  1115\n",
            "infinite_loop() : num =  1116\n",
            "infinite_loop() : num =  1117\n",
            "infinite_loop() : num =  1118\n",
            "infinite_loop() : num =  1119\n",
            "infinite_loop() : num =  1120\n",
            "infinite_loop() : num =  1121\n",
            "infinite_loop() : num =  1122\n",
            "infinite_loop() : num =  1123\n",
            "infinite_loop() : num =  1124\n",
            "infinite_loop() : num =  1125\n",
            "infinite_loop() : num =  1126\n",
            "infinite_loop() : num =  1127\n",
            "infinite_loop() : num =  1128\n",
            "infinite_loop() : num =  1129\n",
            "infinite_loop() : num =  1130\n",
            "infinite_loop() : num =  1131\n",
            "infinite_loop() : num =  1132\n",
            "infinite_loop() : num =  1133\n",
            "infinite_loop() : num =  1134\n",
            "infinite_loop() : num =  1135\n",
            "infinite_loop() : num =  1136\n",
            "infinite_loop() : num =  1137\n",
            "infinite_loop() : num =  1138\n",
            "infinite_loop() : num =  1139\n",
            "infinite_loop() : num =  1140\n",
            "infinite_loop() : num =  1141\n",
            "infinite_loop() : num =  1142\n",
            "infinite_loop() : num =  1143\n",
            "infinite_loop() : num =  1144\n",
            "infinite_loop() : num =  1145\n",
            "infinite_loop() : num =  1146\n",
            "infinite_loop() : num =  1147\n",
            "infinite_loop() : num =  1148\n",
            "infinite_loop() : num =  1149\n",
            "infinite_loop() : num =  1150\n",
            "infinite_loop() : num =  1151\n",
            "infinite_loop() : num =  1152\n",
            "infinite_loop() : num =  1153\n",
            "infinite_loop() : num =  1154\n",
            "infinite_loop() : num =  1155\n",
            "infinite_loop() : num =  1156\n",
            "infinite_loop() : num =  1157\n",
            "infinite_loop() : num =  1158\n",
            "infinite_loop() : num =  1159\n",
            "infinite_loop() : num =  1160\n",
            "infinite_loop() : num =  1161\n",
            "infinite_loop() : num =  1162\n",
            "infinite_loop() : num =  1163\n",
            "infinite_loop() : num =  1164\n",
            "infinite_loop() : num =  1165\n",
            "infinite_loop() : num =  1166\n",
            "infinite_loop() : num =  1167\n",
            "infinite_loop() : num =  1168\n",
            "infinite_loop() : num =  1169\n",
            "infinite_loop() : num =  1170\n",
            "infinite_loop() : num =  1171\n",
            "infinite_loop() : num =  1172\n",
            "infinite_loop() : num =  1173\n",
            "infinite_loop() : num =  1174\n",
            "infinite_loop() : num =  1175\n",
            "infinite_loop() : num =  1176\n",
            "infinite_loop() : num =  1177\n",
            "infinite_loop() : num =  1178\n",
            "infinite_loop() : num =  1179\n",
            "infinite_loop() : num =  1180\n",
            "infinite_loop() : num =  1181\n",
            "infinite_loop() : num =  1182\n",
            "infinite_loop() : num =  1183\n",
            "infinite_loop() : num =  1184\n",
            "infinite_loop() : num =  1185\n",
            "infinite_loop() : num =  1186\n",
            "infinite_loop() : num =  1187\n",
            "infinite_loop() : num =  1188\n",
            "infinite_loop() : num =  1189\n",
            "infinite_loop() : num =  1190\n",
            "infinite_loop() : num =  1191\n",
            "infinite_loop() : num =  1192\n",
            "infinite_loop() : num =  1193\n",
            "infinite_loop() : num =  1194\n",
            "infinite_loop() : num =  1195\n",
            "infinite_loop() : num =  1196\n",
            "infinite_loop() : num =  1197\n",
            "infinite_loop() : num =  1198\n",
            "infinite_loop() : num =  1199\n",
            "infinite_loop() : num =  1200\n",
            "infinite_loop() : num =  1201\n",
            "infinite_loop() : num =  1202\n",
            "infinite_loop() : num =  1203\n",
            "infinite_loop() : num =  1204\n",
            "infinite_loop() : num =  1205\n",
            "infinite_loop() : num =  1206\n",
            "infinite_loop() : num =  1207\n",
            "infinite_loop() : num =  1208\n",
            "infinite_loop() : num =  1209\n",
            "infinite_loop() : num =  1210\n",
            "infinite_loop() : num =  1211\n",
            "infinite_loop() : num =  1212\n",
            "infinite_loop() : num =  1213\n",
            "infinite_loop() : num =  1214\n",
            "infinite_loop() : num =  1215\n",
            "infinite_loop() : num =  1216\n",
            "infinite_loop() : num =  1217\n",
            "infinite_loop() : num =  1218\n",
            "infinite_loop() : num =  1219\n",
            "infinite_loop() : num =  1220\n",
            "infinite_loop() : num =  1221\n",
            "infinite_loop() : num =  1222\n",
            "infinite_loop() : num =  1223\n",
            "infinite_loop() : num =  1224\n",
            "infinite_loop() : num =  1225\n",
            "infinite_loop() : num =  1226\n",
            "infinite_loop() : num =  1227\n",
            "infinite_loop() : num =  1228\n",
            "infinite_loop() : num =  1229\n",
            "infinite_loop() : num =  1230\n",
            "infinite_loop() : num =  1231\n",
            "infinite_loop() : num =  1232\n",
            "infinite_loop() : num =  1233\n",
            "infinite_loop() : num =  1234\n",
            "infinite_loop() : num =  1235\n",
            "infinite_loop() : num =  1236\n",
            "infinite_loop() : num =  1237\n",
            "infinite_loop() : num =  1238\n",
            "infinite_loop() : num =  1239\n",
            "infinite_loop() : num =  1240\n",
            "infinite_loop() : num =  1241\n",
            "infinite_loop() : num =  1242\n",
            "infinite_loop() : num =  1243\n",
            "infinite_loop() : num =  1244\n",
            "infinite_loop() : num =  1245\n",
            "infinite_loop() : num =  1246\n",
            "infinite_loop() : num =  1247\n",
            "infinite_loop() : num =  1248\n",
            "infinite_loop() : num =  1249\n",
            "infinite_loop() : num =  1250\n",
            "infinite_loop() : num =  1251\n",
            "infinite_loop() : num =  1252\n",
            "infinite_loop() : num =  1253\n",
            "infinite_loop() : num =  1254\n",
            "infinite_loop() : num =  1255\n",
            "infinite_loop() : num =  1256\n",
            "infinite_loop() : num =  1257\n",
            "infinite_loop() : num =  1258\n",
            "infinite_loop() : num =  1259\n",
            "infinite_loop() : num =  1260\n",
            "infinite_loop() : num =  1261\n",
            "infinite_loop() : num =  1262\n",
            "infinite_loop() : num =  1263\n",
            "infinite_loop() : num =  1264\n",
            "infinite_loop() : num =  1265\n",
            "infinite_loop() : num =  1266\n",
            "infinite_loop() : num =  1267\n",
            "infinite_loop() : num =  1268\n",
            "infinite_loop() : num =  1269\n",
            "infinite_loop() : num =  1270\n",
            "infinite_loop() : num =  1271\n",
            "infinite_loop() : num =  1272\n",
            "infinite_loop() : num =  1273\n",
            "infinite_loop() : num =  1274\n",
            "infinite_loop() : num =  1275\n",
            "infinite_loop() : num =  1276\n",
            "infinite_loop() : num =  1277\n",
            "infinite_loop() : num =  1278\n",
            "infinite_loop() : num =  1279\n",
            "infinite_loop() : num =  1280\n",
            "infinite_loop() : num =  1281\n",
            "infinite_loop() : num =  1282\n",
            "infinite_loop() : num =  1283\n",
            "infinite_loop() : num =  1284\n",
            "infinite_loop() : num =  1285\n",
            "infinite_loop() : num =  1286\n",
            "infinite_loop() : num =  1287\n",
            "infinite_loop() : num =  1288\n",
            "infinite_loop() : num =  1289\n",
            "infinite_loop() : num =  1290\n",
            "infinite_loop() : num =  1291\n",
            "infinite_loop() : num =  1292\n",
            "infinite_loop() : num =  1293\n",
            "infinite_loop() : num =  1294\n",
            "infinite_loop() : num =  1295\n",
            "infinite_loop() : num =  1296\n",
            "infinite_loop() : num =  1297\n",
            "infinite_loop() : num =  1298\n",
            "infinite_loop() : num =  1299\n",
            "infinite_loop() : num =  1300\n",
            "infinite_loop() : num =  1301\n",
            "infinite_loop() : num =  1302\n",
            "infinite_loop() : num =  1303\n",
            "infinite_loop() : num =  1304\n",
            "infinite_loop() : num =  1305\n",
            "infinite_loop() : num =  1306\n",
            "infinite_loop() : num =  1307\n",
            "infinite_loop() : num =  1308\n",
            "infinite_loop() : num =  1309\n",
            "infinite_loop() : num =  1310\n",
            "infinite_loop() : num =  1311\n",
            "infinite_loop() : num =  1312\n",
            "infinite_loop() : num =  1313\n",
            "infinite_loop() : num =  1314\n",
            "infinite_loop() : num =  1315\n",
            "infinite_loop() : num =  1316\n",
            "infinite_loop() : num =  1317\n",
            "infinite_loop() : num =  1318\n",
            "infinite_loop() : num =  1319\n",
            "infinite_loop() : num =  1320\n",
            "infinite_loop() : num =  1321\n",
            "infinite_loop() : num =  1322\n",
            "infinite_loop() : num =  1323\n",
            "infinite_loop() : num =  1324\n",
            "infinite_loop() : num =  1325\n",
            "infinite_loop() : num =  1326\n",
            "infinite_loop() : num =  1327\n",
            "infinite_loop() : num =  1328\n",
            "infinite_loop() : num =  1329\n",
            "infinite_loop() : num =  1330\n",
            "infinite_loop() : num =  1331\n",
            "infinite_loop() : num =  1332\n",
            "infinite_loop() : num =  1333\n",
            "infinite_loop() : num =  1334\n",
            "infinite_loop() : num =  1335\n",
            "infinite_loop() : num =  1336\n",
            "infinite_loop() : num =  1337\n",
            "infinite_loop() : num =  1338\n",
            "infinite_loop() : num =  1339\n",
            "infinite_loop() : num =  1340\n",
            "infinite_loop() : num =  1341\n",
            "infinite_loop() : num =  1342\n",
            "infinite_loop() : num =  1343\n",
            "infinite_loop() : num =  1344\n",
            "infinite_loop() : num =  1345\n",
            "infinite_loop() : num =  1346\n",
            "infinite_loop() : num =  1347\n",
            "infinite_loop() : num =  1348\n",
            "infinite_loop() : num =  1349\n",
            "infinite_loop() : num =  1350\n",
            "infinite_loop() : num =  1351\n",
            "infinite_loop() : num =  1352\n",
            "infinite_loop() : num =  1353\n",
            "infinite_loop() : num =  1354\n",
            "infinite_loop() : num =  1355\n",
            "infinite_loop() : num =  1356\n",
            "infinite_loop() : num =  1357\n",
            "infinite_loop() : num =  1358\n",
            "infinite_loop() : num =  1359\n",
            "infinite_loop() : num =  1360\n",
            "infinite_loop() : num =  1361\n",
            "infinite_loop() : num =  1362\n",
            "infinite_loop() : num =  1363\n",
            "infinite_loop() : num =  1364\n",
            "infinite_loop() : num =  1365\n",
            "infinite_loop() : num =  1366\n",
            "infinite_loop() : num =  1367\n",
            "infinite_loop() : num =  1368\n",
            "infinite_loop() : num =  1369\n",
            "infinite_loop() : num =  1370\n",
            "infinite_loop() : num =  1371\n",
            "infinite_loop() : num =  1372\n",
            "infinite_loop() : num =  1373\n",
            "infinite_loop() : num =  1374\n",
            "infinite_loop() : num =  1375\n",
            "infinite_loop() : num =  1376\n",
            "infinite_loop() : num =  1377\n",
            "infinite_loop() : num =  1378\n",
            "infinite_loop() : num =  1379\n",
            "infinite_loop() : num =  1380\n",
            "infinite_loop() : num =  1381\n",
            "infinite_loop() : num =  1382\n",
            "infinite_loop() : num =  1383\n",
            "infinite_loop() : num =  1384\n",
            "infinite_loop() : num =  1385\n",
            "infinite_loop() : num =  1386\n",
            "infinite_loop() : num =  1387\n",
            "infinite_loop() : num =  1388\n",
            "infinite_loop() : num =  1389\n",
            "infinite_loop() : num =  1390\n",
            "infinite_loop() : num =  1391\n",
            "infinite_loop() : num =  1392\n",
            "infinite_loop() : num =  1393\n",
            "infinite_loop() : num =  1394\n",
            "infinite_loop() : num =  1395\n",
            "infinite_loop() : num =  1396\n",
            "infinite_loop() : num =  1397\n",
            "infinite_loop() : num =  1398\n",
            "infinite_loop() : num =  1399\n",
            "infinite_loop() : num =  1400\n",
            "infinite_loop() : num =  1401\n",
            "infinite_loop() : num =  1402\n",
            "infinite_loop() : num =  1403\n",
            "infinite_loop() : num =  1404\n",
            "infinite_loop() : num =  1405\n",
            "infinite_loop() : num =  1406\n",
            "infinite_loop() : num =  1407\n",
            "infinite_loop() : num =  1408\n",
            "infinite_loop() : num =  1409\n",
            "infinite_loop() : num =  1410\n",
            "infinite_loop() : num =  1411\n",
            "infinite_loop() : num =  1412\n",
            "infinite_loop() : num =  1413\n",
            "infinite_loop() : num =  1414\n",
            "infinite_loop() : num =  1415\n",
            "infinite_loop() : num =  1416\n",
            "infinite_loop() : num =  1417\n",
            "infinite_loop() : num =  1418\n",
            "infinite_loop() : num =  1419\n",
            "infinite_loop() : num =  1420\n",
            "infinite_loop() : num =  1421\n",
            "infinite_loop() : num =  1422\n",
            "infinite_loop() : num =  1423\n",
            "infinite_loop() : num =  1424\n",
            "infinite_loop() : num =  1425\n",
            "infinite_loop() : num =  1426\n",
            "infinite_loop() : num =  1427\n",
            "infinite_loop() : num =  1428\n",
            "infinite_loop() : num =  1429\n",
            "infinite_loop() : num =  1430\n",
            "infinite_loop() : num =  1431\n",
            "infinite_loop() : num =  1432\n",
            "infinite_loop() : num =  1433\n",
            "infinite_loop() : num =  1434\n",
            "infinite_loop() : num =  1435\n",
            "infinite_loop() : num =  1436\n",
            "infinite_loop() : num =  1437\n",
            "infinite_loop() : num =  1438\n",
            "infinite_loop() : num =  1439\n",
            "infinite_loop() : num =  1440\n",
            "infinite_loop() : num =  1441\n",
            "infinite_loop() : num =  1442\n",
            "infinite_loop() : num =  1443\n",
            "infinite_loop() : num =  1444\n",
            "infinite_loop() : num =  1445\n",
            "infinite_loop() : num =  1446\n",
            "infinite_loop() : num =  1447\n",
            "infinite_loop() : num =  1448\n",
            "infinite_loop() : num =  1449\n",
            "infinite_loop() : num =  1450\n",
            "infinite_loop() : num =  1451\n",
            "infinite_loop() : num =  1452\n",
            "infinite_loop() : num =  1453\n",
            "infinite_loop() : num =  1454\n",
            "infinite_loop() : num =  1455\n",
            "infinite_loop() : num =  1456\n",
            "infinite_loop() : num =  1457\n",
            "infinite_loop() : num =  1458\n",
            "infinite_loop() : num =  1459\n",
            "infinite_loop() : num =  1460\n",
            "infinite_loop() : num =  1461\n",
            "infinite_loop() : num =  1462\n",
            "infinite_loop() : num =  1463\n",
            "infinite_loop() : num =  1464\n",
            "infinite_loop() : num =  1465\n",
            "infinite_loop() : num =  1466\n",
            "infinite_loop() : num =  1467\n",
            "infinite_loop() : num =  1468\n",
            "infinite_loop() : num =  1469\n",
            "infinite_loop() : num =  1470\n",
            "infinite_loop() : num =  1471\n",
            "infinite_loop() : num =  1472\n",
            "infinite_loop() : num =  1473\n",
            "infinite_loop() : num =  1474\n",
            "infinite_loop() : num =  1475\n",
            "infinite_loop() : num =  1476\n",
            "infinite_loop() : num =  1477\n",
            "infinite_loop() : num =  1478\n",
            "infinite_loop() : num =  1479\n",
            "infinite_loop() : num =  1480\n",
            "infinite_loop() : num =  1481\n",
            "infinite_loop() : num =  1482\n",
            "infinite_loop() : num =  1483\n",
            "infinite_loop() : num =  1484\n",
            "infinite_loop() : num =  1485\n",
            "infinite_loop() : num =  1486\n",
            "infinite_loop() : num =  1487\n",
            "infinite_loop() : num =  1488\n",
            "infinite_loop() : num =  1489\n",
            "infinite_loop() : num =  1490\n",
            "infinite_loop() : num =  1491\n",
            "infinite_loop() : num =  1492\n",
            "infinite_loop() : num =  1493\n",
            "infinite_loop() : num =  1494\n",
            "infinite_loop() : num =  1495\n",
            "infinite_loop() : num =  1496\n",
            "infinite_loop() : num =  1497\n",
            "infinite_loop() : num =  1498\n",
            "infinite_loop() : num =  1499\n",
            "infinite_loop() : num =  1500\n",
            "infinite_loop() : num =  1501\n",
            "infinite_loop() : num =  1502\n",
            "infinite_loop() : num =  1503\n",
            "infinite_loop() : num =  1504\n",
            "infinite_loop() : num =  1505\n",
            "infinite_loop() : num =  1506\n",
            "infinite_loop() : num =  1507\n",
            "infinite_loop() : num =  1508\n",
            "infinite_loop() : num =  1509\n",
            "infinite_loop() : num =  1510\n",
            "infinite_loop() : num =  1511\n",
            "infinite_loop() : num =  1512\n",
            "infinite_loop() : num =  1513\n",
            "infinite_loop() : num =  1514\n",
            "infinite_loop() : num =  1515\n",
            "infinite_loop() : num =  1516\n",
            "infinite_loop() : num =  1517\n",
            "infinite_loop() : num =  1518\n",
            "infinite_loop() : num =  1519\n",
            "infinite_loop() : num =  1520\n",
            "infinite_loop() : num =  1521\n",
            "infinite_loop() : num =  1522\n",
            "infinite_loop() : num =  1523\n",
            "infinite_loop() : num =  1524\n",
            "infinite_loop() : num =  1525\n",
            "infinite_loop() : num =  1526\n",
            "infinite_loop() : num =  1527\n",
            "infinite_loop() : num =  1528\n",
            "infinite_loop() : num =  1529\n",
            "infinite_loop() : num =  1530\n",
            "infinite_loop() : num =  1531\n",
            "infinite_loop() : num =  1532\n",
            "infinite_loop() : num =  1533\n",
            "infinite_loop() : num =  1534\n",
            "infinite_loop() : num =  1535\n",
            "infinite_loop() : num =  1536\n",
            "infinite_loop() : num =  1537\n",
            "infinite_loop() : num =  1538\n",
            "infinite_loop() : num =  1539\n",
            "infinite_loop() : num =  1540\n",
            "infinite_loop() : num =  1541\n",
            "infinite_loop() : num =  1542\n",
            "infinite_loop() : num =  1543\n",
            "infinite_loop() : num =  1544\n",
            "infinite_loop() : num =  1545\n",
            "infinite_loop() : num =  1546\n",
            "infinite_loop() : num =  1547\n",
            "infinite_loop() : num =  1548\n",
            "infinite_loop() : num =  1549\n",
            "infinite_loop() : num =  1550\n",
            "infinite_loop() : num =  1551\n",
            "infinite_loop() : num =  1552\n",
            "infinite_loop() : num =  1553\n",
            "infinite_loop() : num =  1554\n",
            "infinite_loop() : num =  1555\n",
            "infinite_loop() : num =  1556\n",
            "infinite_loop() : num =  1557\n",
            "infinite_loop() : num =  1558\n",
            "infinite_loop() : num =  1559\n",
            "infinite_loop() : num =  1560\n",
            "infinite_loop() : num =  1561\n",
            "infinite_loop() : num =  1562\n",
            "infinite_loop() : num =  1563\n",
            "infinite_loop() : num =  1564\n",
            "infinite_loop() : num =  1565\n",
            "infinite_loop() : num =  1566\n",
            "infinite_loop() : num =  1567\n",
            "infinite_loop() : num =  1568\n",
            "infinite_loop() : num =  1569\n",
            "infinite_loop() : num =  1570\n",
            "infinite_loop() : num =  1571\n",
            "infinite_loop() : num =  1572\n",
            "infinite_loop() : num =  1573\n",
            "infinite_loop() : num =  1574\n",
            "infinite_loop() : num =  1575\n",
            "infinite_loop() : num =  1576\n",
            "infinite_loop() : num =  1577\n",
            "infinite_loop() : num =  1578\n",
            "infinite_loop() : num =  1579\n",
            "infinite_loop() : num =  1580\n",
            "infinite_loop() : num =  1581\n",
            "infinite_loop() : num =  1582\n",
            "infinite_loop() : num =  1583\n",
            "infinite_loop() : num =  1584\n",
            "infinite_loop() : num =  1585\n",
            "infinite_loop() : num =  1586\n",
            "infinite_loop() : num =  1587\n",
            "infinite_loop() : num =  1588\n",
            "infinite_loop() : num =  1589\n",
            "infinite_loop() : num =  1590\n",
            "infinite_loop() : num =  1591\n",
            "infinite_loop() : num =  1592\n",
            "infinite_loop() : num =  1593\n",
            "infinite_loop() : num =  1594\n",
            "infinite_loop() : num =  1595\n",
            "infinite_loop() : num =  1596\n",
            "infinite_loop() : num =  1597\n",
            "infinite_loop() : num =  1598\n",
            "infinite_loop() : num =  1599\n",
            "infinite_loop() : num =  1600\n",
            "infinite_loop() : num =  1601\n",
            "infinite_loop() : num =  1602\n",
            "infinite_loop() : num =  1603\n",
            "infinite_loop() : num =  1604\n",
            "infinite_loop() : num =  1605\n",
            "infinite_loop() : num =  1606\n",
            "infinite_loop() : num =  1607\n",
            "infinite_loop() : num =  1608\n",
            "infinite_loop() : num =  1609\n",
            "infinite_loop() : num =  1610\n",
            "infinite_loop() : num =  1611\n",
            "infinite_loop() : num =  1612\n",
            "infinite_loop() : num =  1613\n",
            "infinite_loop() : num =  1614\n",
            "infinite_loop() : num =  1615\n",
            "infinite_loop() : num =  1616\n",
            "infinite_loop() : num =  1617\n",
            "infinite_loop() : num =  1618\n",
            "infinite_loop() : num =  1619\n",
            "infinite_loop() : num =  1620\n",
            "infinite_loop() : num =  1621\n",
            "infinite_loop() : num =  1622\n",
            "infinite_loop() : num =  1623\n",
            "infinite_loop() : num =  1624\n",
            "infinite_loop() : num =  1625\n",
            "infinite_loop() : num =  1626\n",
            "infinite_loop() : num =  1627\n",
            "infinite_loop() : num =  1628\n",
            "infinite_loop() : num =  1629\n",
            "infinite_loop() : num =  1630\n",
            "infinite_loop() : num =  1631\n",
            "infinite_loop() : num =  1632\n",
            "infinite_loop() : num =  1633\n",
            "infinite_loop() : num =  1634\n",
            "infinite_loop() : num =  1635\n",
            "infinite_loop() : num =  1636\n",
            "infinite_loop() : num =  1637\n",
            "infinite_loop() : num =  1638\n",
            "infinite_loop() : num =  1639\n",
            "infinite_loop() : num =  1640\n",
            "infinite_loop() : num =  1641\n",
            "infinite_loop() : num =  1642\n",
            "infinite_loop() : num =  1643\n",
            "infinite_loop() : num =  1644\n",
            "infinite_loop() : num =  1645\n",
            "infinite_loop() : num =  1646\n",
            "infinite_loop() : num =  1647\n",
            "infinite_loop() : num =  1648\n",
            "infinite_loop() : num =  1649\n",
            "infinite_loop() : num =  1650\n",
            "infinite_loop() : num =  1651\n",
            "infinite_loop() : num =  1652\n",
            "infinite_loop() : num =  1653\n",
            "infinite_loop() : num =  1654\n",
            "infinite_loop() : num =  1655\n",
            "infinite_loop() : num =  1656\n",
            "infinite_loop() : num =  1657\n",
            "infinite_loop() : num =  1658\n",
            "infinite_loop() : num =  1659\n",
            "infinite_loop() : num =  1660\n",
            "infinite_loop() : num =  1661\n",
            "infinite_loop() : num =  1662\n",
            "infinite_loop() : num =  1663\n",
            "infinite_loop() : num =  1664\n",
            "infinite_loop() : num =  1665\n",
            "infinite_loop() : num =  1666\n",
            "infinite_loop() : num =  1667\n",
            "infinite_loop() : num =  1668\n",
            "infinite_loop() : num =  1669\n",
            "infinite_loop() : num =  1670\n",
            "infinite_loop() : num =  1671\n",
            "infinite_loop() : num =  1672\n",
            "infinite_loop() : num =  1673\n",
            "infinite_loop() : num =  1674\n",
            "infinite_loop() : num =  1675\n",
            "infinite_loop() : num =  1676\n",
            "infinite_loop() : num =  1677\n",
            "infinite_loop() : num =  1678\n",
            "infinite_loop() : num =  1679\n",
            "infinite_loop() : num =  1680\n",
            "infinite_loop() : num =  1681\n",
            "infinite_loop() : num =  1682\n",
            "infinite_loop() : num =  1683\n",
            "infinite_loop() : num =  1684\n",
            "infinite_loop() : num =  1685\n",
            "infinite_loop() : num =  1686\n",
            "infinite_loop() : num =  1687\n",
            "infinite_loop() : num =  1688\n",
            "infinite_loop() : num =  1689\n",
            "infinite_loop() : num =  1690\n",
            "infinite_loop() : num =  1691\n",
            "infinite_loop() : num =  1692\n",
            "infinite_loop() : num =  1693\n",
            "infinite_loop() : num =  1694\n",
            "infinite_loop() : num =  1695\n",
            "infinite_loop() : num =  1696\n",
            "infinite_loop() : num =  1697\n",
            "infinite_loop() : num =  1698\n",
            "infinite_loop() : num =  1699\n",
            "infinite_loop() : num =  1700\n",
            "infinite_loop() : num =  1701\n",
            "infinite_loop() : num =  1702\n",
            "infinite_loop() : num =  1703\n",
            "infinite_loop() : num =  1704\n",
            "infinite_loop() : num =  1705\n",
            "infinite_loop() : num =  1706\n",
            "infinite_loop() : num =  1707\n",
            "infinite_loop() : num =  1708\n",
            "infinite_loop() : num =  1709\n",
            "infinite_loop() : num =  1710\n",
            "infinite_loop() : num =  1711\n",
            "infinite_loop() : num =  1712\n",
            "infinite_loop() : num =  1713\n",
            "infinite_loop() : num =  1714\n",
            "infinite_loop() : num =  1715\n",
            "infinite_loop() : num =  1716\n",
            "infinite_loop() : num =  1717\n",
            "infinite_loop() : num =  1718\n",
            "infinite_loop() : num =  1719\n",
            "infinite_loop() : num =  1720\n",
            "infinite_loop() : num =  1721\n",
            "infinite_loop() : num =  1722\n",
            "infinite_loop() : num =  1723\n",
            "infinite_loop() : num =  1724\n",
            "infinite_loop() : num =  1725\n",
            "infinite_loop() : num =  1726\n",
            "infinite_loop() : num =  1727\n",
            "infinite_loop() : num =  1728\n",
            "infinite_loop() : num =  1729\n",
            "infinite_loop() : num =  1730\n",
            "infinite_loop() : num =  1731\n",
            "infinite_loop() : num =  1732\n",
            "infinite_loop() : num =  1733\n",
            "infinite_loop() : num =  1734\n",
            "infinite_loop() : num =  1735\n",
            "infinite_loop() : num =  1736\n",
            "infinite_loop() : num =  1737\n",
            "infinite_loop() : num =  1738\n",
            "infinite_loop() : num =  1739\n",
            "infinite_loop() : num =  1740\n",
            "infinite_loop() : num =  1741\n",
            "infinite_loop() : num =  1742\n",
            "infinite_loop() : num =  1743\n",
            "infinite_loop() : num =  1744\n",
            "infinite_loop() : num =  1745\n",
            "infinite_loop() : num =  1746\n",
            "infinite_loop() : num =  1747\n",
            "infinite_loop() : num =  1748\n",
            "infinite_loop() : num =  1749\n",
            "infinite_loop() : num =  1750\n",
            "infinite_loop() : num =  1751\n",
            "infinite_loop() : num =  1752\n",
            "infinite_loop() : num =  1753\n",
            "infinite_loop() : num =  1754\n",
            "infinite_loop() : num =  1755\n",
            "infinite_loop() : num =  1756\n",
            "infinite_loop() : num =  1757\n",
            "infinite_loop() : num =  1758\n",
            "infinite_loop() : num =  1759\n",
            "infinite_loop() : num =  1760\n",
            "infinite_loop() : num =  1761\n",
            "infinite_loop() : num =  1762\n",
            "infinite_loop() : num =  1763\n",
            "infinite_loop() : num =  1764\n",
            "infinite_loop() : num =  1765\n",
            "infinite_loop() : num =  1766\n",
            "infinite_loop() : num =  1767\n",
            "infinite_loop() : num =  1768\n",
            "infinite_loop() : num =  1769\n",
            "infinite_loop() : num =  1770\n",
            "infinite_loop() : num =  1771\n",
            "infinite_loop() : num =  1772\n",
            "infinite_loop() : num =  1773\n",
            "infinite_loop() : num =  1774\n",
            "infinite_loop() : num =  1775\n",
            "infinite_loop() : num =  1776\n",
            "infinite_loop() : num =  1777\n",
            "infinite_loop() : num =  1778\n",
            "infinite_loop() : num =  1779\n",
            "infinite_loop() : num =  1780\n",
            "infinite_loop() : num =  1781\n",
            "infinite_loop() : num =  1782\n",
            "infinite_loop() : num =  1783\n",
            "infinite_loop() : num =  1784\n",
            "infinite_loop() : num =  1785\n",
            "infinite_loop() : num =  1786\n",
            "infinite_loop() : num =  1787\n",
            "infinite_loop() : num =  1788\n",
            "infinite_loop() : num =  1789\n",
            "infinite_loop() : num =  1790\n",
            "infinite_loop() : num =  1791\n",
            "infinite_loop() : num =  1792\n",
            "infinite_loop() : num =  1793\n",
            "infinite_loop() : num =  1794\n",
            "infinite_loop() : num =  1795\n",
            "infinite_loop() : num =  1796\n",
            "infinite_loop() : num =  1797\n",
            "infinite_loop() : num =  1798\n",
            "infinite_loop() : num =  1799\n",
            "infinite_loop() : num =  1800\n",
            "infinite_loop() : num =  1801\n",
            "infinite_loop() : num =  1802\n",
            "infinite_loop() : num =  1803\n",
            "infinite_loop() : num =  1804\n",
            "infinite_loop() : num =  1805\n",
            "infinite_loop() : num =  1806\n",
            "infinite_loop() : num =  1807\n",
            "infinite_loop() : num =  1808\n",
            "infinite_loop() : num =  1809\n",
            "infinite_loop() : num =  1810\n",
            "infinite_loop() : num =  1811\n",
            "infinite_loop() : num =  1812\n",
            "infinite_loop() : num =  1813\n",
            "infinite_loop() : num =  1814\n",
            "infinite_loop() : num =  1815\n",
            "infinite_loop() : num =  1816\n",
            "infinite_loop() : num =  1817\n",
            "infinite_loop() : num =  1818\n",
            "infinite_loop() : num =  1819\n",
            "infinite_loop() : num =  1820\n",
            "infinite_loop() : num =  1821\n",
            "infinite_loop() : num =  1822\n",
            "infinite_loop() : num =  1823\n",
            "infinite_loop() : num =  1824\n",
            "infinite_loop() : num =  1825\n",
            "infinite_loop() : num =  1826\n",
            "infinite_loop() : num =  1827\n",
            "infinite_loop() : num =  1828\n",
            "infinite_loop() : num =  1829\n",
            "infinite_loop() : num =  1830\n",
            "infinite_loop() : num =  1831\n",
            "infinite_loop() : num =  1832\n",
            "infinite_loop() : num =  1833\n",
            "infinite_loop() : num =  1834\n",
            "infinite_loop() : num =  1835\n",
            "infinite_loop() : num =  1836\n",
            "infinite_loop() : num =  1837\n",
            "infinite_loop() : num =  1838\n",
            "infinite_loop() : num =  1839\n",
            "infinite_loop() : num =  1840\n",
            "infinite_loop() : num =  1841\n",
            "infinite_loop() : num =  1842\n",
            "infinite_loop() : num =  1843\n",
            "infinite_loop() : num =  1844\n",
            "infinite_loop() : num =  1845\n",
            "infinite_loop() : num =  1846\n",
            "infinite_loop() : num =  1847\n",
            "infinite_loop() : num =  1848\n",
            "infinite_loop() : num =  1849\n",
            "infinite_loop() : num =  1850\n",
            "infinite_loop() : num =  1851\n",
            "infinite_loop() : num =  1852\n",
            "infinite_loop() : num =  1853\n",
            "infinite_loop() : num =  1854\n",
            "infinite_loop() : num =  1855\n",
            "infinite_loop() : num =  1856\n",
            "infinite_loop() : num =  1857\n",
            "infinite_loop() : num =  1858\n",
            "infinite_loop() : num =  1859\n",
            "infinite_loop() : num =  1860\n",
            "infinite_loop() : num =  1861\n",
            "infinite_loop() : num =  1862\n",
            "infinite_loop() : num =  1863\n",
            "infinite_loop() : num =  1864\n",
            "infinite_loop() : num =  1865\n",
            "infinite_loop() : num =  1866\n",
            "infinite_loop() : num =  1867\n",
            "infinite_loop() : num =  1868\n",
            "infinite_loop() : num =  1869\n",
            "infinite_loop() : num =  1870\n",
            "infinite_loop() : num =  1871\n",
            "infinite_loop() : num =  1872\n",
            "infinite_loop() : num =  1873\n",
            "infinite_loop() : num =  1874\n",
            "infinite_loop() : num =  1875\n",
            "infinite_loop() : num =  1876\n",
            "infinite_loop() : num =  1877\n",
            "infinite_loop() : num =  1878\n",
            "infinite_loop() : num =  1879\n",
            "infinite_loop() : num =  1880\n",
            "infinite_loop() : num =  1881\n",
            "infinite_loop() : num =  1882\n",
            "infinite_loop() : num =  1883\n",
            "infinite_loop() : num =  1884\n",
            "infinite_loop() : num =  1885\n",
            "infinite_loop() : num =  1886\n",
            "infinite_loop() : num =  1887\n",
            "infinite_loop() : num =  1888\n",
            "infinite_loop() : num =  1889\n",
            "infinite_loop() : num =  1890\n",
            "infinite_loop() : num =  1891\n",
            "infinite_loop() : num =  1892\n",
            "infinite_loop() : num =  1893\n",
            "infinite_loop() : num =  1894\n",
            "infinite_loop() : num =  1895\n",
            "infinite_loop() : num =  1896\n",
            "infinite_loop() : num =  1897\n",
            "infinite_loop() : num =  1898\n",
            "infinite_loop() : num =  1899\n",
            "infinite_loop() : num =  1900\n",
            "infinite_loop() : num =  1901\n",
            "infinite_loop() : num =  1902\n",
            "infinite_loop() : num =  1903\n",
            "infinite_loop() : num =  1904\n",
            "infinite_loop() : num =  1905\n",
            "infinite_loop() : num =  1906\n",
            "infinite_loop() : num =  1907\n",
            "infinite_loop() : num =  1908\n",
            "infinite_loop() : num =  1909\n",
            "infinite_loop() : num =  1910\n",
            "infinite_loop() : num =  1911\n",
            "infinite_loop() : num =  1912\n",
            "infinite_loop() : num =  1913\n",
            "infinite_loop() : num =  1914\n",
            "infinite_loop() : num =  1915\n",
            "infinite_loop() : num =  1916\n",
            "infinite_loop() : num =  1917\n",
            "infinite_loop() : num =  1918\n",
            "infinite_loop() : num =  1919\n",
            "infinite_loop() : num =  1920\n",
            "infinite_loop() : num =  1921\n",
            "infinite_loop() : num =  1922\n",
            "infinite_loop() : num =  1923\n",
            "infinite_loop() : num =  1924\n",
            "infinite_loop() : num =  1925\n",
            "infinite_loop() : num =  1926\n",
            "infinite_loop() : num =  1927\n",
            "infinite_loop() : num =  1928\n",
            "infinite_loop() : num =  1929\n",
            "infinite_loop() : num =  1930\n",
            "infinite_loop() : num =  1931\n",
            "infinite_loop() : num =  1932\n",
            "infinite_loop() : num =  1933\n",
            "infinite_loop() : num =  1934\n",
            "infinite_loop() : num =  1935\n",
            "infinite_loop() : num =  1936\n",
            "infinite_loop() : num =  1937\n",
            "infinite_loop() : num =  1938\n",
            "infinite_loop() : num =  1939\n",
            "infinite_loop() : num =  1940\n",
            "infinite_loop() : num =  1941\n",
            "infinite_loop() : num =  1942\n",
            "infinite_loop() : num =  1943\n",
            "infinite_loop() : num =  1944\n",
            "infinite_loop() : num =  1945\n",
            "infinite_loop() : num =  1946\n",
            "infinite_loop() : num =  1947\n",
            "infinite_loop() : num =  1948\n",
            "infinite_loop() : num =  1949\n",
            "infinite_loop() : num =  1950\n",
            "infinite_loop() : num =  1951\n",
            "infinite_loop() : num =  1952\n",
            "infinite_loop() : num =  1953\n",
            "infinite_loop() : num =  1954\n",
            "infinite_loop() : num =  1955\n",
            "infinite_loop() : num =  1956\n",
            "infinite_loop() : num =  1957\n",
            "infinite_loop() : num =  1958\n",
            "infinite_loop() : num =  1959\n",
            "infinite_loop() : num =  1960\n",
            "infinite_loop() : num =  1961\n",
            "infinite_loop() : num =  1962\n",
            "infinite_loop() : num =  1963\n",
            "infinite_loop() : num =  1964\n",
            "infinite_loop() : num =  1965\n",
            "infinite_loop() : num =  1966\n",
            "infinite_loop() : num =  1967\n",
            "infinite_loop() : num =  1968\n",
            "infinite_loop() : num =  1969\n",
            "infinite_loop() : num =  1970\n",
            "infinite_loop() : num =  1971\n",
            "infinite_loop() : num =  1972\n",
            "infinite_loop() : num =  1973\n",
            "infinite_loop() : num =  1974\n",
            "infinite_loop() : num =  1975\n",
            "infinite_loop() : num =  1976\n",
            "infinite_loop() : num =  1977\n",
            "infinite_loop() : num =  1978\n",
            "infinite_loop() : num =  1979\n",
            "infinite_loop() : num =  1980\n",
            "infinite_loop() : num =  1981\n",
            "infinite_loop() : num =  1982\n",
            "infinite_loop() : num =  1983\n",
            "infinite_loop() : num =  1984\n",
            "infinite_loop() : num =  1985\n",
            "infinite_loop() : num =  1986\n",
            "infinite_loop() : num =  1987\n",
            "infinite_loop() : num =  1988\n",
            "infinite_loop() : num =  1989\n",
            "infinite_loop() : num =  1990\n",
            "infinite_loop() : num =  1991\n",
            "infinite_loop() : num =  1992\n",
            "infinite_loop() : num =  1993\n",
            "infinite_loop() : num =  1994\n",
            "infinite_loop() : num =  1995\n",
            "infinite_loop() : num =  1996\n",
            "infinite_loop() : num =  1997\n",
            "infinite_loop() : num =  1998\n",
            "infinite_loop() : num =  1999\n",
            "infinite_loop() : num =  2000\n",
            "infinite_loop() : num =  2001\n",
            "infinite_loop() : num =  2002\n",
            "infinite_loop() : num =  2003\n",
            "infinite_loop() : num =  2004\n",
            "infinite_loop() : num =  2005\n",
            "infinite_loop() : num =  2006\n",
            "infinite_loop() : num =  2007\n",
            "infinite_loop() : num =  2008\n",
            "infinite_loop() : num =  2009\n",
            "infinite_loop() : num =  2010\n",
            "infinite_loop() : num =  2011\n",
            "infinite_loop() : num =  2012\n",
            "infinite_loop() : num =  2013\n",
            "infinite_loop() : num =  2014\n",
            "infinite_loop() : num =  2015\n",
            "infinite_loop() : num =  2016\n",
            "infinite_loop() : num =  2017\n",
            "infinite_loop() : num =  2018\n",
            "infinite_loop() : num =  2019\n",
            "infinite_loop() : num =  2020\n",
            "infinite_loop() : num =  2021\n",
            "infinite_loop() : num =  2022\n",
            "infinite_loop() : num =  2023\n",
            "infinite_loop() : num =  2024\n",
            "infinite_loop() : num =  2025\n",
            "infinite_loop() : num =  2026\n",
            "infinite_loop() : num =  2027\n",
            "infinite_loop() : num =  2028\n",
            "infinite_loop() : num =  2029\n",
            "infinite_loop() : num =  2030\n",
            "infinite_loop() : num =  2031\n",
            "infinite_loop() : num =  2032\n",
            "infinite_loop() : num =  2033\n",
            "infinite_loop() : num =  2034\n",
            "infinite_loop() : num =  2035\n",
            "infinite_loop() : num =  2036\n",
            "infinite_loop() : num =  2037\n",
            "infinite_loop() : num =  2038\n",
            "infinite_loop() : num =  2039\n",
            "infinite_loop() : num =  2040\n",
            "infinite_loop() : num =  2041\n",
            "infinite_loop() : num =  2042\n",
            "infinite_loop() : num =  2043\n",
            "infinite_loop() : num =  2044\n",
            "infinite_loop() : num =  2045\n",
            "infinite_loop() : num =  2046\n",
            "infinite_loop() : num =  2047\n",
            "infinite_loop() : num =  2048\n",
            "infinite_loop() : num =  2049\n",
            "infinite_loop() : num =  2050\n",
            "infinite_loop() : num =  2051\n",
            "infinite_loop() : num =  2052\n",
            "infinite_loop() : num =  2053\n",
            "infinite_loop() : num =  2054\n",
            "infinite_loop() : num =  2055\n",
            "infinite_loop() : num =  2056\n",
            "infinite_loop() : num =  2057\n",
            "infinite_loop() : num =  2058\n",
            "infinite_loop() : num =  2059\n",
            "infinite_loop() : num =  2060\n",
            "infinite_loop() : num =  2061\n",
            "infinite_loop() : num =  2062\n",
            "infinite_loop() : num =  2063\n",
            "infinite_loop() : num =  2064\n",
            "infinite_loop() : num =  2065\n",
            "infinite_loop() : num =  2066\n",
            "infinite_loop() : num =  2067\n",
            "infinite_loop() : num =  2068\n",
            "infinite_loop() : num =  2069\n",
            "infinite_loop() : num =  2070\n",
            "infinite_loop() : num =  2071\n",
            "infinite_loop() : num =  2072\n",
            "infinite_loop() : num =  2073\n",
            "infinite_loop() : num =  2074\n",
            "infinite_loop() : num =  2075\n",
            "infinite_loop() : num =  2076\n",
            "infinite_loop() : num =  2077\n",
            "infinite_loop() : num =  2078\n",
            "infinite_loop() : num =  2079\n",
            "infinite_loop() : num =  2080\n",
            "infinite_loop() : num =  2081\n",
            "infinite_loop() : num =  2082\n",
            "infinite_loop() : num =  2083\n",
            "infinite_loop() : num =  2084\n",
            "infinite_loop() : num =  2085\n",
            "infinite_loop() : num =  2086\n",
            "infinite_loop() : num =  2087\n",
            "infinite_loop() : num =  2088\n",
            "infinite_loop() : num =  2089\n",
            "infinite_loop() : num =  2090\n",
            "infinite_loop() : num =  2091\n",
            "infinite_loop() : num =  2092\n",
            "infinite_loop() : num =  2093\n",
            "infinite_loop() : num =  2094\n",
            "infinite_loop() : num =  2095\n",
            "infinite_loop() : num =  2096\n",
            "infinite_loop() : num =  2097\n",
            "infinite_loop() : num =  2098\n",
            "infinite_loop() : num =  2099\n",
            "infinite_loop() : num =  2100\n",
            "infinite_loop() : num =  2101\n",
            "infinite_loop() : num =  2102\n",
            "infinite_loop() : num =  2103\n",
            "infinite_loop() : num =  2104\n",
            "infinite_loop() : num =  2105\n",
            "infinite_loop() : num =  2106\n",
            "infinite_loop() : num =  2107\n",
            "infinite_loop() : num =  2108\n",
            "infinite_loop() : num =  2109\n",
            "infinite_loop() : num =  2110\n",
            "infinite_loop() : num =  2111\n",
            "infinite_loop() : num =  2112\n",
            "infinite_loop() : num =  2113\n",
            "infinite_loop() : num =  2114\n",
            "infinite_loop() : num =  2115\n",
            "infinite_loop() : num =  2116\n",
            "infinite_loop() : num =  2117\n",
            "infinite_loop() : num =  2118\n",
            "infinite_loop() : num =  2119\n",
            "infinite_loop() : num =  2120\n",
            "infinite_loop() : num =  2121\n",
            "infinite_loop() : num =  2122\n",
            "infinite_loop() : num =  2123\n",
            "infinite_loop() : num =  2124\n",
            "infinite_loop() : num =  2125\n",
            "infinite_loop() : num =  2126\n",
            "infinite_loop() : num =  2127\n",
            "infinite_loop() : num =  2128\n",
            "infinite_loop() : num =  2129\n",
            "infinite_loop() : num =  2130\n",
            "infinite_loop() : num =  2131\n",
            "infinite_loop() : num =  2132\n",
            "infinite_loop() : num =  2133\n",
            "infinite_loop() : num =  2134\n",
            "infinite_loop() : num =  2135\n",
            "infinite_loop() : num =  2136\n",
            "infinite_loop() : num =  2137\n",
            "infinite_loop() : num =  2138\n",
            "infinite_loop() : num =  2139\n",
            "infinite_loop() : num =  2140\n",
            "infinite_loop() : num =  2141\n",
            "infinite_loop() : num =  2142\n",
            "infinite_loop() : num =  2143\n",
            "infinite_loop() : num =  2144\n",
            "infinite_loop() : num =  2145\n",
            "infinite_loop() : num =  2146\n",
            "infinite_loop() : num =  2147\n",
            "infinite_loop() : num =  2148\n",
            "infinite_loop() : num =  2149\n",
            "infinite_loop() : num =  2150\n",
            "infinite_loop() : num =  2151\n",
            "infinite_loop() : num =  2152\n",
            "infinite_loop() : num =  2153\n",
            "infinite_loop() : num =  2154\n",
            "infinite_loop() : num =  2155\n",
            "infinite_loop() : num =  2156\n",
            "infinite_loop() : num =  2157\n",
            "infinite_loop() : num =  2158\n",
            "infinite_loop() : num =  2159\n",
            "infinite_loop() : num =  2160\n",
            "infinite_loop() : num =  2161\n",
            "infinite_loop() : num =  2162\n",
            "infinite_loop() : num =  2163\n",
            "infinite_loop() : num =  2164\n",
            "infinite_loop() : num =  2165\n",
            "infinite_loop() : num =  2166\n",
            "infinite_loop() : num =  2167\n",
            "infinite_loop() : num =  2168\n",
            "infinite_loop() : num =  2169\n",
            "infinite_loop() : num =  2170\n",
            "infinite_loop() : num =  2171\n",
            "infinite_loop() : num =  2172\n",
            "infinite_loop() : num =  2173\n",
            "infinite_loop() : num =  2174\n",
            "infinite_loop() : num =  2175\n",
            "infinite_loop() : num =  2176\n",
            "infinite_loop() : num =  2177\n",
            "infinite_loop() : num =  2178\n",
            "infinite_loop() : num =  2179\n",
            "infinite_loop() : num =  2180\n",
            "infinite_loop() : num =  2181\n",
            "infinite_loop() : num =  2182\n",
            "infinite_loop() : num =  2183\n",
            "infinite_loop() : num =  2184\n",
            "infinite_loop() : num =  2185\n",
            "infinite_loop() : num =  2186\n",
            "infinite_loop() : num =  2187\n",
            "infinite_loop() : num =  2188\n",
            "infinite_loop() : num =  2189\n",
            "infinite_loop() : num =  2190\n",
            "infinite_loop() : num =  2191\n",
            "infinite_loop() : num =  2192\n",
            "infinite_loop() : num =  2193\n",
            "infinite_loop() : num =  2194\n",
            "infinite_loop() : num =  2195\n",
            "infinite_loop() : num =  2196\n",
            "infinite_loop() : num =  2197\n",
            "infinite_loop() : num =  2198\n",
            "infinite_loop() : num =  2199\n",
            "infinite_loop() : num =  2200\n",
            "infinite_loop() : num =  2201\n",
            "infinite_loop() : num =  2202\n",
            "infinite_loop() : num =  2203\n",
            "infinite_loop() : num =  2204\n",
            "infinite_loop() : num =  2205\n",
            "infinite_loop() : num =  2206\n",
            "infinite_loop() : num =  2207\n",
            "infinite_loop() : num =  2208\n",
            "infinite_loop() : num =  2209\n",
            "infinite_loop() : num =  2210\n",
            "infinite_loop() : num =  2211\n",
            "infinite_loop() : num =  2212\n",
            "infinite_loop() : num =  2213\n",
            "infinite_loop() : num =  2214\n",
            "infinite_loop() : num =  2215\n",
            "infinite_loop() : num =  2216\n",
            "infinite_loop() : num =  2217\n",
            "infinite_loop() : num =  2218\n",
            "infinite_loop() : num =  2219\n",
            "infinite_loop() : num =  2220\n",
            "infinite_loop() : num =  2221\n",
            "infinite_loop() : num =  2222\n",
            "infinite_loop() : num =  2223\n",
            "infinite_loop() : num =  2224\n",
            "infinite_loop() : num =  2225\n",
            "infinite_loop() : num =  2226\n",
            "infinite_loop() : num =  2227\n",
            "infinite_loop() : num =  2228\n",
            "infinite_loop() : num =  2229\n",
            "infinite_loop() : num =  2230\n",
            "infinite_loop() : num =  2231\n",
            "infinite_loop() : num =  2232\n",
            "infinite_loop() : num =  2233\n",
            "infinite_loop() : num =  2234\n",
            "infinite_loop() : num =  2235\n",
            "infinite_loop() : num =  2236\n",
            "infinite_loop() : num =  2237\n",
            "infinite_loop() : num =  2238\n",
            "infinite_loop() : num =  2239\n",
            "infinite_loop() : num =  2240\n",
            "infinite_loop() : num =  2241\n",
            "infinite_loop() : num =  2242\n",
            "infinite_loop() : num =  2243\n",
            "infinite_loop() : num =  2244\n",
            "infinite_loop() : num =  2245\n",
            "infinite_loop() : num =  2246\n",
            "infinite_loop() : num =  2247\n",
            "infinite_loop() : num =  2248\n",
            "infinite_loop() : num =  2249\n",
            "infinite_loop() : num =  2250\n",
            "infinite_loop() : num =  2251\n",
            "infinite_loop() : num =  2252\n",
            "infinite_loop() : num =  2253\n",
            "infinite_loop() : num =  2254\n",
            "infinite_loop() : num =  2255\n",
            "infinite_loop() : num =  2256\n",
            "infinite_loop() : num =  2257\n",
            "infinite_loop() : num =  2258\n",
            "infinite_loop() : num =  2259\n",
            "infinite_loop() : num =  2260\n",
            "infinite_loop() : num =  2261\n",
            "infinite_loop() : num =  2262\n",
            "infinite_loop() : num =  2263\n",
            "infinite_loop() : num =  2264\n",
            "infinite_loop() : num =  2265\n",
            "infinite_loop() : num =  2266\n",
            "infinite_loop() : num =  2267\n",
            "infinite_loop() : num =  2268\n",
            "infinite_loop() : num =  2269\n",
            "infinite_loop() : num =  2270\n",
            "infinite_loop() : num =  2271\n",
            "infinite_loop() : num =  2272\n",
            "infinite_loop() : num =  2273\n",
            "infinite_loop() : num =  2274\n",
            "infinite_loop() : num =  2275\n",
            "infinite_loop() : num =  2276\n",
            "infinite_loop() : num =  2277\n",
            "infinite_loop() : num =  2278\n",
            "infinite_loop() : num =  2279\n",
            "infinite_loop() : num =  2280\n",
            "infinite_loop() : num =  2281\n",
            "infinite_loop() : num =  2282\n",
            "infinite_loop() : num =  2283\n",
            "infinite_loop() : num =  2284\n",
            "infinite_loop() : num =  2285\n",
            "infinite_loop() : num =  2286\n",
            "infinite_loop() : num =  2287\n",
            "infinite_loop() : num =  2288\n",
            "infinite_loop() : num =  2289\n",
            "infinite_loop() : num =  2290\n",
            "infinite_loop() : num =  2291\n",
            "infinite_loop() : num =  2292\n",
            "infinite_loop() : num =  2293\n",
            "infinite_loop() : num =  2294\n",
            "infinite_loop() : num =  2295\n",
            "infinite_loop() : num =  2296\n",
            "infinite_loop() : num =  2297\n",
            "infinite_loop() : num =  2298\n",
            "infinite_loop() : num =  2299\n",
            "infinite_loop() : num =  2300\n",
            "infinite_loop() : num =  2301\n",
            "infinite_loop() : num =  2302\n",
            "infinite_loop() : num =  2303\n",
            "infinite_loop() : num =  2304\n",
            "infinite_loop() : num =  2305\n",
            "infinite_loop() : num =  2306\n",
            "infinite_loop() : num =  2307\n",
            "infinite_loop() : num =  2308\n",
            "infinite_loop() : num =  2309\n",
            "infinite_loop() : num =  2310\n",
            "infinite_loop() : num =  2311\n",
            "infinite_loop() : num =  2312\n",
            "infinite_loop() : num =  2313\n",
            "infinite_loop() : num =  2314\n",
            "infinite_loop() : num =  2315\n",
            "infinite_loop() : num =  2316\n",
            "infinite_loop() : num =  2317\n",
            "infinite_loop() : num =  2318\n",
            "infinite_loop() : num =  2319\n",
            "infinite_loop() : num =  2320\n",
            "infinite_loop() : num =  2321\n",
            "infinite_loop() : num =  2322\n",
            "infinite_loop() : num =  2323\n",
            "infinite_loop() : num =  2324\n",
            "infinite_loop() : num =  2325\n",
            "infinite_loop() : num =  2326\n",
            "infinite_loop() : num =  2327\n",
            "infinite_loop() : num =  2328\n",
            "infinite_loop() : num =  2329\n",
            "infinite_loop() : num =  2330\n",
            "infinite_loop() : num =  2331\n",
            "infinite_loop() : num =  2332\n",
            "infinite_loop() : num =  2333\n",
            "infinite_loop() : num =  2334\n",
            "infinite_loop() : num =  2335\n",
            "infinite_loop() : num =  2336\n",
            "infinite_loop() : num =  2337\n",
            "infinite_loop() : num =  2338\n",
            "infinite_loop() : num =  2339\n",
            "infinite_loop() : num =  2340\n",
            "infinite_loop() : num =  2341\n",
            "infinite_loop() : num =  2342\n",
            "infinite_loop() : num =  2343\n",
            "infinite_loop() : num =  2344\n",
            "infinite_loop() : num =  2345\n",
            "infinite_loop() : num =  2346\n",
            "infinite_loop() : num =  2347\n",
            "infinite_loop() : num =  2348\n",
            "infinite_loop() : num =  2349\n",
            "infinite_loop() : num =  2350\n",
            "infinite_loop() : num =  2351\n",
            "infinite_loop() : num =  2352\n",
            "infinite_loop() : num =  2353\n",
            "infinite_loop() : num =  2354\n",
            "infinite_loop() : num =  2355\n",
            "infinite_loop() : num =  2356\n",
            "infinite_loop() : num =  2357\n",
            "infinite_loop() : num =  2358\n",
            "infinite_loop() : num =  2359\n",
            "infinite_loop() : num =  2360\n",
            "infinite_loop() : num =  2361\n",
            "infinite_loop() : num =  2362\n",
            "infinite_loop() : num =  2363\n",
            "infinite_loop() : num =  2364\n",
            "infinite_loop() : num =  2365\n",
            "infinite_loop() : num =  2366\n",
            "infinite_loop() : num =  2367\n",
            "infinite_loop() : num =  2368\n",
            "infinite_loop() : num =  2369\n",
            "infinite_loop() : num =  2370\n",
            "infinite_loop() : num =  2371\n",
            "infinite_loop() : num =  2372\n",
            "infinite_loop() : num =  2373\n",
            "infinite_loop() : num =  2374\n",
            "infinite_loop() : num =  2375\n",
            "infinite_loop() : num =  2376\n",
            "infinite_loop() : num =  2377\n",
            "infinite_loop() : num =  2378\n",
            "infinite_loop() : num =  2379\n",
            "infinite_loop() : num =  2380\n",
            "infinite_loop() : num =  2381\n",
            "infinite_loop() : num =  2382\n",
            "infinite_loop() : num =  2383\n",
            "infinite_loop() : num =  2384\n",
            "infinite_loop() : num =  2385\n",
            "infinite_loop() : num =  2386\n",
            "infinite_loop() : num =  2387\n",
            "infinite_loop() : num =  2388\n",
            "infinite_loop() : num =  2389\n",
            "infinite_loop() : num =  2390\n",
            "infinite_loop() : num =  2391\n",
            "infinite_loop() : num =  2392\n",
            "infinite_loop() : num =  2393\n",
            "infinite_loop() : num =  2394\n",
            "infinite_loop() : num =  2395\n",
            "infinite_loop() : num =  2396\n",
            "infinite_loop() : num =  2397\n",
            "infinite_loop() : num =  2398\n",
            "infinite_loop() : num =  2399\n",
            "infinite_loop() : num =  2400\n",
            "infinite_loop() : num =  2401\n",
            "infinite_loop() : num =  2402\n",
            "infinite_loop() : num =  2403\n",
            "infinite_loop() : num =  2404\n",
            "infinite_loop() : num =  2405\n",
            "infinite_loop() : num =  2406\n",
            "infinite_loop() : num =  2407\n",
            "infinite_loop() : num =  2408\n",
            "infinite_loop() : num =  2409\n",
            "infinite_loop() : num =  2410\n",
            "infinite_loop() : num =  2411\n",
            "infinite_loop() : num =  2412\n",
            "infinite_loop() : num =  2413\n",
            "infinite_loop() : num =  2414\n",
            "infinite_loop() : num =  2415\n",
            "infinite_loop() : num =  2416\n",
            "infinite_loop() : num =  2417\n",
            "infinite_loop() : num =  2418\n",
            "infinite_loop() : num =  2419\n",
            "infinite_loop() : num =  2420\n",
            "infinite_loop() : num =  2421\n",
            "infinite_loop() : num =  2422\n",
            "infinite_loop() : num =  2423\n",
            "infinite_loop() : num =  2424\n",
            "infinite_loop() : num =  2425\n",
            "infinite_loop() : num =  2426\n",
            "infinite_loop() : num =  2427\n",
            "infinite_loop() : num =  2428\n",
            "infinite_loop() : num =  2429\n",
            "infinite_loop() : num =  2430\n",
            "infinite_loop() : num =  2431\n",
            "infinite_loop() : num =  2432\n",
            "infinite_loop() : num =  2433\n",
            "infinite_loop() : num =  2434\n",
            "infinite_loop() : num =  2435\n",
            "infinite_loop() : num =  2436\n",
            "infinite_loop() : num =  2437\n",
            "infinite_loop() : num =  2438\n",
            "infinite_loop() : num =  2439\n",
            "infinite_loop() : num =  2440\n",
            "infinite_loop() : num =  2441\n",
            "infinite_loop() : num =  2442\n",
            "infinite_loop() : num =  2443\n",
            "infinite_loop() : num =  2444\n",
            "infinite_loop() : num =  2445\n",
            "infinite_loop() : num =  2446\n",
            "infinite_loop() : num =  2447\n",
            "infinite_loop() : num =  2448\n",
            "infinite_loop() : num =  2449\n",
            "infinite_loop() : num =  2450\n",
            "infinite_loop() : num =  2451\n",
            "infinite_loop() : num =  2452\n",
            "infinite_loop() : num =  2453\n",
            "infinite_loop() : num =  2454\n",
            "infinite_loop() : num =  2455\n",
            "infinite_loop() : num =  2456\n",
            "infinite_loop() : num =  2457\n",
            "infinite_loop() : num =  2458\n",
            "infinite_loop() : num =  2459\n",
            "infinite_loop() : num =  2460\n",
            "infinite_loop() : num =  2461\n",
            "infinite_loop() : num =  2462\n",
            "infinite_loop() : num =  2463\n",
            "infinite_loop() : num =  2464\n",
            "infinite_loop() : num =  2465\n",
            "infinite_loop() : num =  2466\n",
            "infinite_loop() : num =  2467\n",
            "infinite_loop() : num =  2468\n",
            "infinite_loop() : num =  2469\n",
            "infinite_loop() : num =  2470\n",
            "infinite_loop() : num =  2471\n",
            "infinite_loop() : num =  2472\n",
            "infinite_loop() : num =  2473\n",
            "infinite_loop() : num =  2474\n",
            "infinite_loop() : num =  2475\n",
            "infinite_loop() : num =  2476\n",
            "infinite_loop() : num =  2477\n",
            "infinite_loop() : num =  2478\n",
            "infinite_loop() : num =  2479\n",
            "infinite_loop() : num =  2480\n",
            "infinite_loop() : num =  2481\n",
            "infinite_loop() : num =  2482\n",
            "infinite_loop() : num =  2483\n",
            "infinite_loop() : num =  2484\n",
            "infinite_loop() : num =  2485\n",
            "infinite_loop() : num =  2486\n",
            "infinite_loop() : num =  2487\n",
            "infinite_loop() : num =  2488\n",
            "infinite_loop() : num =  2489\n",
            "infinite_loop() : num =  2490\n",
            "infinite_loop() : num =  2491\n",
            "infinite_loop() : num =  2492\n",
            "infinite_loop() : num =  2493\n",
            "infinite_loop() : num =  2494\n",
            "infinite_loop() : num =  2495\n",
            "infinite_loop() : num =  2496\n",
            "infinite_loop() : num =  2497\n",
            "infinite_loop() : num =  2498\n",
            "infinite_loop() : num =  2499\n",
            "infinite_loop() : num =  2500\n",
            "infinite_loop() : num =  2501\n",
            "infinite_loop() : num =  2502\n",
            "infinite_loop() : num =  2503\n",
            "infinite_loop() : num =  2504\n",
            "infinite_loop() : num =  2505\n",
            "infinite_loop() : num =  2506\n",
            "infinite_loop() : num =  2507\n",
            "infinite_loop() : num =  2508\n",
            "infinite_loop() : num =  2509\n",
            "infinite_loop() : num =  2510\n",
            "infinite_loop() : num =  2511\n",
            "infinite_loop() : num =  2512\n",
            "infinite_loop() : num =  2513\n",
            "infinite_loop() : num =  2514\n",
            "infinite_loop() : num =  2515\n",
            "infinite_loop() : num =  2516\n",
            "infinite_loop() : num =  2517\n",
            "infinite_loop() : num =  2518\n",
            "infinite_loop() : num =  2519\n",
            "infinite_loop() : num =  2520\n",
            "infinite_loop() : num =  2521\n",
            "infinite_loop() : num =  2522\n",
            "infinite_loop() : num =  2523\n",
            "infinite_loop() : num =  2524\n",
            "infinite_loop() : num =  2525\n",
            "infinite_loop() : num =  2526\n",
            "infinite_loop() : num =  2527\n",
            "infinite_loop() : num =  2528\n",
            "infinite_loop() : num =  2529\n",
            "infinite_loop() : num =  2530\n",
            "infinite_loop() : num =  2531\n",
            "infinite_loop() : num =  2532\n",
            "infinite_loop() : num =  2533\n",
            "infinite_loop() : num =  2534\n",
            "infinite_loop() : num =  2535\n",
            "infinite_loop() : num =  2536\n",
            "infinite_loop() : num =  2537\n",
            "infinite_loop() : num =  2538\n",
            "infinite_loop() : num =  2539\n",
            "infinite_loop() : num =  2540\n",
            "infinite_loop() : num =  2541\n",
            "infinite_loop() : num =  2542\n",
            "infinite_loop() : num =  2543\n",
            "infinite_loop() : num =  2544\n",
            "infinite_loop() : num =  2545\n",
            "infinite_loop() : num =  2546\n",
            "infinite_loop() : num =  2547\n",
            "infinite_loop() : num =  2548\n",
            "infinite_loop() : num =  2549\n",
            "infinite_loop() : num =  2550\n",
            "infinite_loop() : num =  2551\n",
            "infinite_loop() : num =  2552\n",
            "infinite_loop() : num =  2553\n",
            "infinite_loop() : num =  2554\n",
            "infinite_loop() : num =  2555\n",
            "infinite_loop() : num =  2556\n",
            "infinite_loop() : num =  2557\n",
            "infinite_loop() : num =  2558\n",
            "infinite_loop() : num =  2559\n",
            "infinite_loop() : num =  2560\n",
            "infinite_loop() : num =  2561\n",
            "infinite_loop() : num =  2562\n",
            "infinite_loop() : num =  2563\n",
            "infinite_loop() : num =  2564\n",
            "infinite_loop() : num =  2565\n",
            "infinite_loop() : num =  2566\n",
            "infinite_loop() : num =  2567\n",
            "infinite_loop() : num =  2568\n",
            "infinite_loop() : num =  2569\n",
            "infinite_loop() : num =  2570\n",
            "infinite_loop() : num =  2571\n",
            "infinite_loop() : num =  2572\n",
            "infinite_loop() : num =  2573\n",
            "infinite_loop() : num =  2574\n",
            "infinite_loop() : num =  2575\n",
            "infinite_loop() : num =  2576\n",
            "infinite_loop() : num =  2577\n",
            "infinite_loop() : num =  2578\n",
            "infinite_loop() : num =  2579\n",
            "infinite_loop() : num =  2580\n",
            "infinite_loop() : num =  2581\n",
            "infinite_loop() : num =  2582\n",
            "infinite_loop() : num =  2583\n",
            "infinite_loop() : num =  2584\n",
            "infinite_loop() : num =  2585\n",
            "infinite_loop() : num =  2586\n",
            "infinite_loop() : num =  2587\n",
            "infinite_loop() : num =  2588\n",
            "infinite_loop() : num =  2589\n",
            "infinite_loop() : num =  2590\n",
            "infinite_loop() : num =  2591\n",
            "infinite_loop() : num =  2592\n",
            "infinite_loop() : num =  2593\n",
            "infinite_loop() : num =  2594\n",
            "infinite_loop() : num =  2595\n",
            "infinite_loop() : num =  2596\n",
            "infinite_loop() : num =  2597\n",
            "infinite_loop() : num =  2598\n",
            "infinite_loop() : num =  2599\n",
            "infinite_loop() : num =  2600\n",
            "infinite_loop() : num =  2601\n",
            "infinite_loop() : num =  2602\n",
            "infinite_loop() : num =  2603\n",
            "infinite_loop() : num =  2604\n",
            "infinite_loop() : num =  2605\n",
            "infinite_loop() : num =  2606\n",
            "infinite_loop() : num =  2607\n",
            "infinite_loop() : num =  2608\n",
            "infinite_loop() : num =  2609\n",
            "infinite_loop() : num =  2610\n",
            "infinite_loop() : num =  2611\n",
            "infinite_loop() : num =  2612\n",
            "infinite_loop() : num =  2613\n",
            "infinite_loop() : num =  2614\n",
            "infinite_loop() : num =  2615\n",
            "infinite_loop() : num =  2616\n",
            "infinite_loop() : num =  2617\n",
            "infinite_loop() : num =  2618\n",
            "infinite_loop() : num =  2619\n",
            "infinite_loop() : num =  2620\n",
            "infinite_loop() : num =  2621\n",
            "infinite_loop() : num =  2622\n",
            "infinite_loop() : num =  2623\n",
            "infinite_loop() : num =  2624\n",
            "infinite_loop() : num =  2625\n",
            "infinite_loop() : num =  2626\n",
            "infinite_loop() : num =  2627\n",
            "infinite_loop() : num =  2628\n",
            "infinite_loop() : num =  2629\n",
            "infinite_loop() : num =  2630\n",
            "infinite_loop() : num =  2631\n",
            "infinite_loop() : num =  2632\n",
            "infinite_loop() : num =  2633\n",
            "infinite_loop() : num =  2634\n",
            "infinite_loop() : num =  2635\n",
            "infinite_loop() : num =  2636\n",
            "infinite_loop() : num =  2637\n",
            "infinite_loop() : num =  2638\n",
            "infinite_loop() : num =  2639\n",
            "infinite_loop() : num =  2640\n",
            "infinite_loop() : num =  2641\n",
            "infinite_loop() : num =  2642\n",
            "infinite_loop() : num =  2643\n",
            "infinite_loop() : num =  2644\n",
            "infinite_loop() : num =  2645\n",
            "infinite_loop() : num =  2646\n",
            "infinite_loop() : num =  2647\n",
            "infinite_loop() : num =  2648\n",
            "infinite_loop() : num =  2649\n",
            "infinite_loop() : num =  2650\n",
            "infinite_loop() : num =  2651\n",
            "infinite_loop() : num =  2652\n",
            "infinite_loop() : num =  2653\n",
            "infinite_loop() : num =  2654\n",
            "infinite_loop() : num =  2655\n",
            "infinite_loop() : num =  2656\n",
            "infinite_loop() : num =  2657\n",
            "infinite_loop() : num =  2658\n",
            "infinite_loop() : num =  2659\n",
            "infinite_loop() : num =  2660\n",
            "infinite_loop() : num =  2661\n",
            "infinite_loop() : num =  2662\n",
            "infinite_loop() : num =  2663\n",
            "infinite_loop() : num =  2664\n",
            "infinite_loop() : num =  2665\n",
            "infinite_loop() : num =  2666\n",
            "infinite_loop() : num =  2667\n",
            "infinite_loop() : num =  2668\n",
            "infinite_loop() : num =  2669\n",
            "infinite_loop() : num =  2670\n",
            "infinite_loop() : num =  2671\n",
            "infinite_loop() : num =  2672\n",
            "infinite_loop() : num =  2673\n",
            "infinite_loop() : num =  2674\n",
            "infinite_loop() : num =  2675\n",
            "infinite_loop() : num =  2676\n",
            "infinite_loop() : num =  2677\n",
            "infinite_loop() : num =  2678\n",
            "infinite_loop() : num =  2679\n",
            "infinite_loop() : num =  2680\n",
            "infinite_loop() : num =  2681\n",
            "infinite_loop() : num =  2682\n",
            "infinite_loop() : num =  2683\n",
            "infinite_loop() : num =  2684\n",
            "infinite_loop() : num =  2685\n",
            "infinite_loop() : num =  2686\n",
            "infinite_loop() : num =  2687\n",
            "infinite_loop() : num =  2688\n",
            "infinite_loop() : num =  2689\n",
            "infinite_loop() : num =  2690\n",
            "infinite_loop() : num =  2691\n",
            "infinite_loop() : num =  2692\n",
            "infinite_loop() : num =  2693\n",
            "infinite_loop() : num =  2694\n",
            "infinite_loop() : num =  2695\n",
            "infinite_loop() : num =  2696\n",
            "infinite_loop() : num =  2697\n",
            "infinite_loop() : num =  2698\n",
            "infinite_loop() : num =  2699\n",
            "infinite_loop() : num =  2700\n",
            "infinite_loop() : num =  2701\n",
            "infinite_loop() : num =  2702\n",
            "infinite_loop() : num =  2703\n",
            "infinite_loop() : num =  2704\n",
            "infinite_loop() : num =  2705\n",
            "infinite_loop() : num =  2706\n",
            "infinite_loop() : num =  2707\n",
            "infinite_loop() : num =  2708\n",
            "infinite_loop() : num =  2709\n",
            "infinite_loop() : num =  2710\n",
            "infinite_loop() : num =  2711\n",
            "infinite_loop() : num =  2712\n",
            "infinite_loop() : num =  2713\n",
            "infinite_loop() : num =  2714\n",
            "infinite_loop() : num =  2715\n",
            "infinite_loop() : num =  2716\n",
            "infinite_loop() : num =  2717\n",
            "infinite_loop() : num =  2718\n",
            "infinite_loop() : num =  2719\n",
            "infinite_loop() : num =  2720\n",
            "infinite_loop() : num =  2721\n",
            "infinite_loop() : num =  2722\n",
            "infinite_loop() : num =  2723\n",
            "infinite_loop() : num =  2724\n",
            "infinite_loop() : num =  2725\n",
            "infinite_loop() : num =  2726\n",
            "infinite_loop() : num =  2727\n",
            "infinite_loop() : num =  2728\n",
            "infinite_loop() : num =  2729\n",
            "infinite_loop() : num =  2730\n",
            "infinite_loop() : num =  2731\n",
            "infinite_loop() : num =  2732\n",
            "infinite_loop() : num =  2733\n",
            "infinite_loop() : num =  2734\n",
            "infinite_loop() : num =  2735\n",
            "infinite_loop() : num =  2736\n",
            "infinite_loop() : num =  2737\n",
            "infinite_loop() : num =  2738\n",
            "infinite_loop() : num =  2739\n",
            "infinite_loop() : num =  2740\n",
            "infinite_loop() : num =  2741\n",
            "infinite_loop() : num =  2742\n",
            "infinite_loop() : num =  2743\n",
            "infinite_loop() : num =  2744\n",
            "infinite_loop() : num =  2745\n",
            "infinite_loop() : num =  2746\n",
            "infinite_loop() : num =  2747\n",
            "infinite_loop() : num =  2748\n",
            "infinite_loop() : num =  2749\n",
            "infinite_loop() : num =  2750\n",
            "infinite_loop() : num =  2751\n",
            "infinite_loop() : num =  2752\n",
            "infinite_loop() : num =  2753\n",
            "infinite_loop() : num =  2754\n",
            "infinite_loop() : num =  2755\n",
            "infinite_loop() : num =  2756\n",
            "infinite_loop() : num =  2757\n",
            "infinite_loop() : num =  2758\n",
            "infinite_loop() : num =  2759\n",
            "infinite_loop() : num =  2760\n",
            "infinite_loop() : num =  2761\n",
            "infinite_loop() : num =  2762\n",
            "infinite_loop() : num =  2763\n",
            "infinite_loop() : num =  2764\n",
            "infinite_loop() : num =  2765\n",
            "infinite_loop() : num =  2766\n",
            "infinite_loop() : num =  2767\n",
            "infinite_loop() : num =  2768\n",
            "infinite_loop() : num =  2769\n",
            "infinite_loop() : num =  2770\n",
            "infinite_loop() : num =  2771\n",
            "infinite_loop() : num =  2772\n",
            "infinite_loop() : num =  2773\n",
            "infinite_loop() : num =  2774\n",
            "infinite_loop() : num =  2775\n",
            "infinite_loop() : num =  2776\n",
            "infinite_loop() : num =  2777\n",
            "infinite_loop() : num =  2778\n",
            "infinite_loop() : num =  2779\n",
            "infinite_loop() : num =  2780\n",
            "infinite_loop() : num =  2781\n",
            "infinite_loop() : num =  2782\n",
            "infinite_loop() : num =  2783\n",
            "infinite_loop() : num =  2784\n",
            "infinite_loop() : num =  2785\n",
            "infinite_loop() : num =  2786\n",
            "infinite_loop() : num =  2787\n",
            "infinite_loop() : num =  2788\n",
            "infinite_loop() : num =  2789\n",
            "infinite_loop() : num =  2790\n",
            "infinite_loop() : num =  2791\n",
            "infinite_loop() : num =  2792\n",
            "infinite_loop() : num =  2793\n",
            "infinite_loop() : num =  2794\n",
            "infinite_loop() : num =  2795\n",
            "infinite_loop() : num =  2796\n",
            "infinite_loop() : num =  2797\n",
            "infinite_loop() : num =  2798\n",
            "infinite_loop() : num =  2799\n",
            "infinite_loop() : num =  2800\n",
            "infinite_loop() : num =  2801\n",
            "infinite_loop() : num =  2802\n",
            "infinite_loop() : num =  2803\n",
            "infinite_loop() : num =  2804\n",
            "infinite_loop() : num =  2805\n",
            "infinite_loop() : num =  2806\n",
            "infinite_loop() : num =  2807\n",
            "infinite_loop() : num =  2808\n",
            "infinite_loop() : num =  2809\n",
            "infinite_loop() : num =  2810\n",
            "infinite_loop() : num =  2811\n",
            "infinite_loop() : num =  2812\n",
            "infinite_loop() : num =  2813\n",
            "infinite_loop() : num =  2814\n",
            "infinite_loop() : num =  2815\n",
            "infinite_loop() : num =  2816\n",
            "infinite_loop() : num =  2817\n",
            "infinite_loop() : num =  2818\n",
            "infinite_loop() : num =  2819\n",
            "infinite_loop() : num =  2820\n",
            "infinite_loop() : num =  2821\n",
            "infinite_loop() : num =  2822\n",
            "infinite_loop() : num =  2823\n",
            "infinite_loop() : num =  2824\n",
            "infinite_loop() : num =  2825\n",
            "infinite_loop() : num =  2826\n",
            "infinite_loop() : num =  2827\n",
            "infinite_loop() : num =  2828\n",
            "infinite_loop() : num =  2829\n",
            "infinite_loop() : num =  2830\n",
            "infinite_loop() : num =  2831\n",
            "infinite_loop() : num =  2832\n",
            "infinite_loop() : num =  2833\n",
            "infinite_loop() : num =  2834\n",
            "infinite_loop() : num =  2835\n",
            "infinite_loop() : num =  2836\n",
            "infinite_loop() : num =  2837\n",
            "infinite_loop() : num =  2838\n",
            "infinite_loop() : num =  2839\n",
            "infinite_loop() : num =  2840\n",
            "infinite_loop() : num =  2841\n",
            "infinite_loop() : num =  2842\n",
            "infinite_loop() : num =  2843\n",
            "infinite_loop() : num =  2844\n",
            "infinite_loop() : num =  2845\n",
            "infinite_loop() : num =  2846\n",
            "infinite_loop() : num =  2847\n",
            "infinite_loop() : num =  2848\n",
            "infinite_loop() : num =  2849\n",
            "infinite_loop() : num =  2850\n",
            "infinite_loop() : num =  2851\n",
            "infinite_loop() : num =  2852\n",
            "infinite_loop() : num =  2853\n",
            "infinite_loop() : num =  2854\n",
            "infinite_loop() : num =  2855\n",
            "infinite_loop() : num =  2856\n",
            "infinite_loop() : num =  2857\n",
            "infinite_loop() : num =  2858\n",
            "infinite_loop() : num =  2859\n",
            "infinite_loop() : num =  2860\n",
            "infinite_loop() : num =  2861\n",
            "infinite_loop() : num =  2862\n",
            "infinite_loop() : num =  2863\n",
            "infinite_loop() : num =  2864\n",
            "infinite_loop() : num =  2865\n",
            "infinite_loop() : num =  2866\n",
            "infinite_loop() : num =  2867\n",
            "infinite_loop() : num =  2868\n",
            "infinite_loop() : num =  2869\n",
            "infinite_loop() : num =  2870\n",
            "infinite_loop() : num =  2871\n",
            "infinite_loop() : num =  2872\n",
            "infinite_loop() : num =  2873\n",
            "infinite_loop() : num =  2874\n",
            "infinite_loop() : num =  2875\n",
            "infinite_loop() : num =  2876\n",
            "infinite_loop() : num =  2877\n",
            "infinite_loop() : num =  2878\n",
            "infinite_loop() : num =  2879\n",
            "infinite_loop() : num =  2880\n",
            "infinite_loop() : num =  2881\n",
            "infinite_loop() : num =  2882\n",
            "infinite_loop() : num =  2883\n",
            "infinite_loop() : num =  2884\n",
            "infinite_loop() : num =  2885\n",
            "infinite_loop() : num =  2886\n",
            "infinite_loop() : num =  2887\n",
            "infinite_loop() : num =  2888\n",
            "infinite_loop() : num =  2889\n",
            "infinite_loop() : num =  2890\n",
            "infinite_loop() : num =  2891\n",
            "infinite_loop() : num =  2892\n",
            "infinite_loop() : num =  2893\n",
            "infinite_loop() : num =  2894\n",
            "infinite_loop() : num =  2895\n",
            "infinite_loop() : num =  2896\n",
            "infinite_loop() : num =  2897\n",
            "infinite_loop() : num =  2898\n",
            "infinite_loop() : num =  2899\n",
            "infinite_loop() : num =  2900\n",
            "infinite_loop() : num =  2901\n",
            "infinite_loop() : num =  2902\n",
            "infinite_loop() : num =  2903\n",
            "infinite_loop() : num =  2904\n",
            "infinite_loop() : num =  2905\n",
            "infinite_loop() : num =  2906\n",
            "infinite_loop() : num =  2907\n",
            "infinite_loop() : num =  2908\n",
            "infinite_loop() : num =  2909\n",
            "infinite_loop() : num =  2910\n",
            "infinite_loop() : num =  2911\n",
            "infinite_loop() : num =  2912\n",
            "infinite_loop() : num =  2913\n",
            "infinite_loop() : num =  2914\n",
            "infinite_loop() : num =  2915\n",
            "infinite_loop() : num =  2916\n",
            "infinite_loop() : num =  2917\n",
            "infinite_loop() : num =  2918\n",
            "infinite_loop() : num =  2919\n",
            "infinite_loop() : num =  2920\n",
            "infinite_loop() : num =  2921\n",
            "infinite_loop() : num =  2922\n",
            "infinite_loop() : num =  2923\n",
            "infinite_loop() : num =  2924\n",
            "infinite_loop() : num =  2925\n",
            "infinite_loop() : num =  2926\n",
            "infinite_loop() : num =  2927\n",
            "infinite_loop() : num =  2928\n",
            "infinite_loop() : num =  2929\n",
            "infinite_loop() : num =  2930\n",
            "infinite_loop() : num =  2931\n",
            "infinite_loop() : num =  2932\n",
            "infinite_loop() : num =  2933\n",
            "infinite_loop() : num =  2934\n",
            "infinite_loop() : num =  2935\n",
            "infinite_loop() : num =  2936\n",
            "infinite_loop() : num =  2937\n",
            "infinite_loop() : num =  2938\n",
            "infinite_loop() : num =  2939\n",
            "infinite_loop() : num =  2940\n",
            "infinite_loop() : num =  2941\n",
            "infinite_loop() : num =  2942\n",
            "infinite_loop() : num =  2943\n",
            "infinite_loop() : num =  2944\n",
            "infinite_loop() : num =  2945\n",
            "infinite_loop() : num =  2946\n",
            "infinite_loop() : num =  2947\n",
            "infinite_loop() : num =  2948\n",
            "infinite_loop() : num =  2949\n",
            "infinite_loop() : num =  2950\n",
            "infinite_loop() : num =  2951\n",
            "infinite_loop() : num =  2952\n",
            "infinite_loop() : num =  2953\n",
            "infinite_loop() : num =  2954\n",
            "infinite_loop() : num =  2955\n",
            "infinite_loop() : num =  2956\n",
            "infinite_loop() : num =  2957\n",
            "infinite_loop() : num =  2958\n",
            "infinite_loop() : num =  2959\n",
            "infinite_loop() : num =  2960\n",
            "infinite_loop() : num =  2961\n",
            "infinite_loop() : num =  2962\n",
            "infinite_loop() : num =  2963\n",
            "infinite_loop() : num =  2964\n",
            "infinite_loop() : num =  2965\n",
            "infinite_loop() : num =  2966\n",
            "infinite_loop() : num =  2967\n",
            "infinite_loop() : num =  2968\n",
            "infinite_loop() : num =  2969\n",
            "infinite_loop() : num =  2970\n",
            "infinite_loop() : num =  2971\n",
            "infinite_loop() : num =  2972\n",
            "infinite_loop() : num =  2973\n",
            "infinite_loop() : num =  2974\n",
            "infinite_loop() : num =  2975\n",
            "infinite_loop() : num =  2976\n",
            "infinite_loop() : num =  2977\n",
            "infinite_loop() : num =  2978\n",
            "infinite_loop() : num =  2979\n",
            "infinite_loop() : num =  2980\n",
            "infinite_loop() : num =  2981\n",
            "infinite_loop() : num =  2982\n",
            "infinite_loop() : num =  2983\n",
            "infinite_loop() : num =  2984\n",
            "infinite_loop() : num =  2985\n",
            "infinite_loop() : num =  2986\n",
            "infinite_loop() : num =  2987\n",
            "infinite_loop() : num =  2988\n",
            "infinite_loop() : num =  2989\n",
            "infinite_loop() : num =  2990\n",
            "infinite_loop() : num =  2991\n",
            "infinite_loop() : num =  2992\n",
            "infinite_loop() : num =  2993\n",
            "infinite_loop() : num =  2994\n",
            "infinite_loop() : num =  2995\n",
            "infinite_loop() : num =  2996\n",
            "infinite_loop() : num =  2997\n",
            "infinite_loop() : num =  2998\n",
            "infinite_loop() : num =  2999\n",
            "infinite_loop() : num =  3000\n",
            "infinite_loop() : num =  3001\n",
            "infinite_loop() : num =  3002\n",
            "infinite_loop() : num =  3003\n",
            "infinite_loop() : num =  3004\n",
            "infinite_loop() : num =  3005\n",
            "infinite_loop() : num =  3006\n",
            "infinite_loop() : num =  3007\n",
            "infinite_loop() : num =  3008\n",
            "infinite_loop() : num =  3009\n",
            "infinite_loop() : num =  3010\n",
            "infinite_loop() : num =  3011\n",
            "infinite_loop() : num =  3012\n",
            "infinite_loop() : num =  3013\n",
            "infinite_loop() : num =  3014\n",
            "infinite_loop() : num =  3015\n",
            "infinite_loop() : num =  3016\n",
            "infinite_loop() : num =  3017\n",
            "infinite_loop() : num =  3018\n",
            "infinite_loop() : num =  3019\n",
            "infinite_loop() : num =  3020\n",
            "infinite_loop() : num =  3021\n",
            "infinite_loop() : num =  3022\n",
            "infinite_loop() : num =  3023\n",
            "infinite_loop() : num =  3024\n",
            "infinite_loop() : num =  3025\n",
            "infinite_loop() : num =  3026\n",
            "infinite_loop() : num =  3027\n",
            "infinite_loop() : num =  3028\n",
            "infinite_loop() : num =  3029\n",
            "infinite_loop() : num =  3030\n",
            "infinite_loop() : num =  3031\n",
            "infinite_loop() : num =  3032\n",
            "infinite_loop() : num =  3033\n",
            "infinite_loop() : num =  3034\n",
            "infinite_loop() : num =  3035\n",
            "infinite_loop() : num =  3036\n",
            "infinite_loop() : num =  3037\n",
            "infinite_loop() : num =  3038\n",
            "infinite_loop() : num =  3039\n",
            "infinite_loop() : num =  3040\n",
            "infinite_loop() : num =  3041\n",
            "infinite_loop() : num =  3042\n",
            "infinite_loop() : num =  3043\n",
            "infinite_loop() : num =  3044\n",
            "infinite_loop() : num =  3045\n",
            "infinite_loop() : num =  3046\n",
            "infinite_loop() : num =  3047\n",
            "infinite_loop() : num =  3048\n",
            "infinite_loop() : num =  3049\n",
            "infinite_loop() : num =  3050\n",
            "infinite_loop() : num =  3051\n",
            "infinite_loop() : num =  3052\n",
            "infinite_loop() : num =  3053\n",
            "infinite_loop() : num =  3054\n",
            "infinite_loop() : num =  3055\n",
            "infinite_loop() : num =  3056\n",
            "infinite_loop() : num =  3057\n",
            "infinite_loop() : num =  3058\n",
            "infinite_loop() : num =  3059\n",
            "infinite_loop() : num =  3060\n",
            "infinite_loop() : num =  3061\n",
            "infinite_loop() : num =  3062\n",
            "infinite_loop() : num =  3063\n",
            "infinite_loop() : num =  3064\n",
            "infinite_loop() : num =  3065\n",
            "infinite_loop() : num =  3066\n",
            "infinite_loop() : num =  3067\n",
            "infinite_loop() : num =  3068\n",
            "infinite_loop() : num =  3069\n",
            "infinite_loop() : num =  3070\n",
            "infinite_loop() : num =  3071\n",
            "infinite_loop() : num =  3072\n",
            "infinite_loop() : num =  3073\n",
            "infinite_loop() : num =  3074\n",
            "infinite_loop() : num =  3075\n",
            "infinite_loop() : num =  3076\n",
            "infinite_loop() : num =  3077\n",
            "infinite_loop() : num =  3078\n",
            "infinite_loop() : num =  3079\n",
            "infinite_loop() : num =  3080\n",
            "infinite_loop() : num =  3081\n",
            "infinite_loop() : num =  3082\n",
            "infinite_loop() : num =  3083\n",
            "infinite_loop() : num =  3084\n",
            "infinite_loop() : num =  3085\n",
            "infinite_loop() : num =  3086\n",
            "infinite_loop() : num =  3087\n",
            "infinite_loop() : num =  3088\n",
            "infinite_loop() : num =  3089\n",
            "infinite_loop() : num =  3090\n",
            "infinite_loop() : num =  3091\n",
            "infinite_loop() : num =  3092\n",
            "infinite_loop() : num =  3093\n",
            "infinite_loop() : num =  3094\n",
            "infinite_loop() : num =  3095\n",
            "infinite_loop() : num =  3096\n",
            "infinite_loop() : num =  3097\n",
            "infinite_loop() : num =  3098\n",
            "infinite_loop() : num =  3099\n",
            "infinite_loop() : num =  3100\n",
            "infinite_loop() : num =  3101\n",
            "infinite_loop() : num =  3102\n",
            "infinite_loop() : num =  3103\n",
            "infinite_loop() : num =  3104\n",
            "infinite_loop() : num =  3105\n",
            "infinite_loop() : num =  3106\n",
            "infinite_loop() : num =  3107\n",
            "infinite_loop() : num =  3108\n",
            "infinite_loop() : num =  3109\n",
            "infinite_loop() : num =  3110\n",
            "infinite_loop() : num =  3111\n",
            "infinite_loop() : num =  3112\n",
            "infinite_loop() : num =  3113\n",
            "infinite_loop() : num =  3114\n",
            "infinite_loop() : num =  3115\n",
            "infinite_loop() : num =  3116\n",
            "infinite_loop() : num =  3117\n",
            "infinite_loop() : num =  3118\n",
            "infinite_loop() : num =  3119\n",
            "infinite_loop() : num =  3120\n",
            "infinite_loop() : num =  3121\n",
            "infinite_loop() : num =  3122\n",
            "infinite_loop() : num =  3123\n",
            "infinite_loop() : num =  3124\n",
            "infinite_loop() : num =  3125\n",
            "infinite_loop() : num =  3126\n",
            "infinite_loop() : num =  3127\n",
            "infinite_loop() : num =  3128\n",
            "infinite_loop() : num =  3129\n",
            "infinite_loop() : num =  3130\n",
            "infinite_loop() : num =  3131\n",
            "infinite_loop() : num =  3132\n",
            "infinite_loop() : num =  3133\n",
            "infinite_loop() : num =  3134\n",
            "infinite_loop() : num =  3135\n",
            "infinite_loop() : num =  3136\n",
            "infinite_loop() : num =  3137\n",
            "infinite_loop() : num =  3138\n",
            "infinite_loop() : num =  3139\n",
            "infinite_loop() : num =  3140\n",
            "infinite_loop() : num =  3141\n",
            "infinite_loop() : num =  3142\n",
            "infinite_loop() : num =  3143\n",
            "infinite_loop() : num =  3144\n",
            "infinite_loop() : num =  3145\n",
            "infinite_loop() : num =  3146\n",
            "infinite_loop() : num =  3147\n",
            "infinite_loop() : num =  3148\n",
            "infinite_loop() : num =  3149\n",
            "infinite_loop() : num =  3150\n",
            "infinite_loop() : num =  3151\n",
            "infinite_loop() : num =  3152\n",
            "infinite_loop() : num =  3153\n",
            "infinite_loop() : num =  3154\n",
            "infinite_loop() : num =  3155\n",
            "infinite_loop() : num =  3156\n",
            "infinite_loop() : num =  3157\n",
            "infinite_loop() : num =  3158\n",
            "infinite_loop() : num =  3159\n",
            "infinite_loop() : num =  3160\n",
            "infinite_loop() : num =  3161\n",
            "infinite_loop() : num =  3162\n",
            "infinite_loop() : num =  3163\n",
            "infinite_loop() : num =  3164\n",
            "infinite_loop() : num =  3165\n",
            "infinite_loop() : num =  3166\n",
            "infinite_loop() : num =  3167\n",
            "infinite_loop() : num =  3168\n",
            "infinite_loop() : num =  3169\n",
            "infinite_loop() : num =  3170\n",
            "infinite_loop() : num =  3171\n",
            "infinite_loop() : num =  3172\n",
            "infinite_loop() : num =  3173\n",
            "infinite_loop() : num =  3174\n",
            "infinite_loop() : num =  3175\n",
            "infinite_loop() : num =  3176\n",
            "infinite_loop() : num =  3177\n",
            "infinite_loop() : num =  3178\n",
            "infinite_loop() : num =  3179\n",
            "infinite_loop() : num =  3180\n",
            "infinite_loop() : num =  3181\n",
            "infinite_loop() : num =  3182\n",
            "infinite_loop() : num =  3183\n",
            "infinite_loop() : num =  3184\n",
            "infinite_loop() : num =  3185\n",
            "infinite_loop() : num =  3186\n",
            "infinite_loop() : num =  3187\n",
            "infinite_loop() : num =  3188\n",
            "infinite_loop() : num =  3189\n",
            "infinite_loop() : num =  3190\n",
            "infinite_loop() : num =  3191\n",
            "infinite_loop() : num =  3192\n",
            "infinite_loop() : num =  3193\n",
            "infinite_loop() : num =  3194\n",
            "infinite_loop() : num =  3195\n",
            "infinite_loop() : num =  3196\n",
            "infinite_loop() : num =  3197\n",
            "infinite_loop() : num =  3198\n",
            "infinite_loop() : num =  3199\n",
            "infinite_loop() : num =  3200\n",
            "infinite_loop() : num =  3201\n",
            "infinite_loop() : num =  3202\n",
            "infinite_loop() : num =  3203\n",
            "infinite_loop() : num =  3204\n",
            "infinite_loop() : num =  3205\n",
            "infinite_loop() : num =  3206\n",
            "infinite_loop() : num =  3207\n",
            "infinite_loop() : num =  3208\n",
            "infinite_loop() : num =  3209\n",
            "infinite_loop() : num =  3210\n",
            "infinite_loop() : num =  3211\n",
            "infinite_loop() : num =  3212\n",
            "infinite_loop() : num =  3213\n",
            "infinite_loop() : num =  3214\n",
            "infinite_loop() : num =  3215\n",
            "infinite_loop() : num =  3216\n",
            "infinite_loop() : num =  3217\n",
            "infinite_loop() : num =  3218\n",
            "infinite_loop() : num =  3219\n",
            "infinite_loop() : num =  3220\n",
            "infinite_loop() : num =  3221\n",
            "infinite_loop() : num =  3222\n",
            "infinite_loop() : num =  3223\n",
            "infinite_loop() : num =  3224\n",
            "infinite_loop() : num =  3225\n",
            "infinite_loop() : num =  3226\n",
            "infinite_loop() : num =  3227\n",
            "infinite_loop() : num =  3228\n",
            "infinite_loop() : num =  3229\n",
            "infinite_loop() : num =  3230\n",
            "infinite_loop() : num =  3231\n",
            "infinite_loop() : num =  3232\n",
            "infinite_loop() : num =  3233\n",
            "infinite_loop() : num =  3234\n",
            "infinite_loop() : num =  3235\n",
            "infinite_loop() : num =  3236\n",
            "infinite_loop() : num =  3237\n",
            "infinite_loop() : num =  3238\n",
            "infinite_loop() : num =  3239\n",
            "infinite_loop() : num =  3240\n",
            "infinite_loop() : num =  3241\n",
            "infinite_loop() : num =  3242\n",
            "infinite_loop() : num =  3243\n",
            "infinite_loop() : num =  3244\n",
            "infinite_loop() : num =  3245\n",
            "infinite_loop() : num =  3246\n",
            "infinite_loop() : num =  3247\n",
            "infinite_loop() : num =  3248\n",
            "infinite_loop() : num =  3249\n",
            "infinite_loop() : num =  3250\n",
            "infinite_loop() : num =  3251\n",
            "infinite_loop() : num =  3252\n",
            "infinite_loop() : num =  3253\n",
            "infinite_loop() : num =  3254\n",
            "infinite_loop() : num =  3255\n",
            "infinite_loop() : num =  3256\n",
            "infinite_loop() : num =  3257\n",
            "infinite_loop() : num =  3258\n",
            "infinite_loop() : num =  3259\n",
            "infinite_loop() : num =  3260\n",
            "infinite_loop() : num =  3261\n",
            "infinite_loop() : num =  3262\n",
            "infinite_loop() : num =  3263\n",
            "infinite_loop() : num =  3264\n",
            "infinite_loop() : num =  3265\n",
            "infinite_loop() : num =  3266\n",
            "infinite_loop() : num =  3267\n",
            "infinite_loop() : num =  3268\n",
            "infinite_loop() : num =  3269\n",
            "infinite_loop() : num =  3270\n",
            "infinite_loop() : num =  3271\n",
            "infinite_loop() : num =  3272\n",
            "infinite_loop() : num =  3273\n",
            "infinite_loop() : num =  3274\n",
            "infinite_loop() : num =  3275\n",
            "infinite_loop() : num =  3276\n",
            "infinite_loop() : num =  3277\n",
            "infinite_loop() : num =  3278\n",
            "infinite_loop() : num =  3279\n",
            "infinite_loop() : num =  3280\n",
            "infinite_loop() : num =  3281\n",
            "infinite_loop() : num =  3282\n",
            "infinite_loop() : num =  3283\n",
            "infinite_loop() : num =  3284\n",
            "infinite_loop() : num =  3285\n",
            "infinite_loop() : num =  3286\n",
            "infinite_loop() : num =  3287\n",
            "infinite_loop() : num =  3288\n",
            "infinite_loop() : num =  3289\n",
            "infinite_loop() : num =  3290\n",
            "infinite_loop() : num =  3291\n",
            "infinite_loop() : num =  3292\n",
            "infinite_loop() : num =  3293\n",
            "infinite_loop() : num =  3294\n",
            "infinite_loop() : num =  3295\n",
            "infinite_loop() : num =  3296\n",
            "infinite_loop() : num =  3297\n",
            "infinite_loop() : num =  3298\n",
            "infinite_loop() : num =  3299\n",
            "infinite_loop() : num =  3300\n",
            "infinite_loop() : num =  3301\n",
            "infinite_loop() : num =  3302\n",
            "infinite_loop() : num =  3303\n",
            "infinite_loop() : num =  3304\n",
            "infinite_loop() : num =  3305\n",
            "infinite_loop() : num =  3306\n",
            "infinite_loop() : num =  3307\n",
            "infinite_loop() : num =  3308\n",
            "infinite_loop() : num =  3309\n",
            "infinite_loop() : num =  3310\n",
            "infinite_loop() : num =  3311\n",
            "infinite_loop() : num =  3312\n",
            "infinite_loop() : num =  3313\n",
            "infinite_loop() : num =  3314\n",
            "infinite_loop() : num =  3315\n",
            "infinite_loop() : num =  3316\n",
            "infinite_loop() : num =  3317\n",
            "infinite_loop() : num =  3318\n",
            "infinite_loop() : num =  3319\n",
            "infinite_loop() : num =  3320\n",
            "infinite_loop() : num =  3321\n",
            "infinite_loop() : num =  3322\n",
            "infinite_loop() : num =  3323\n",
            "infinite_loop() : num =  3324\n",
            "infinite_loop() : num =  3325\n",
            "infinite_loop() : num =  3326\n",
            "infinite_loop() : num =  3327\n",
            "infinite_loop() : num =  3328\n",
            "infinite_loop() : num =  3329\n",
            "infinite_loop() : num =  3330\n",
            "infinite_loop() : num =  3331\n",
            "infinite_loop() : num =  3332\n",
            "infinite_loop() : num =  3333\n",
            "infinite_loop() : num =  3334\n",
            "infinite_loop() : num =  3335\n",
            "infinite_loop() : num =  3336\n",
            "infinite_loop() : num =  3337\n",
            "infinite_loop() : num =  3338\n",
            "infinite_loop() : num =  3339\n",
            "infinite_loop() : num =  3340\n",
            "infinite_loop() : num =  3341\n",
            "infinite_loop() : num =  3342\n",
            "infinite_loop() : num =  3343\n",
            "infinite_loop() : num =  3344\n",
            "infinite_loop() : num =  3345\n",
            "infinite_loop() : num =  3346\n",
            "infinite_loop() : num =  3347\n",
            "infinite_loop() : num =  3348\n",
            "infinite_loop() : num =  3349\n",
            "infinite_loop() : num =  3350\n",
            "infinite_loop() : num =  3351\n",
            "infinite_loop() : num =  3352\n",
            "infinite_loop() : num =  3353\n",
            "infinite_loop() : num =  3354\n",
            "infinite_loop() : num =  3355\n",
            "infinite_loop() : num =  3356\n",
            "infinite_loop() : num =  3357\n",
            "infinite_loop() : num =  3358\n",
            "infinite_loop() : num =  3359\n",
            "infinite_loop() : num =  3360\n",
            "infinite_loop() : num =  3361\n",
            "infinite_loop() : num =  3362\n",
            "infinite_loop() : num =  3363\n",
            "infinite_loop() : num =  3364\n",
            "infinite_loop() : num =  3365\n",
            "infinite_loop() : num =  3366\n",
            "infinite_loop() : num =  3367\n",
            "infinite_loop() : num =  3368\n",
            "infinite_loop() : num =  3369\n",
            "infinite_loop() : num =  3370\n",
            "infinite_loop() : num =  3371\n",
            "infinite_loop() : num =  3372\n",
            "infinite_loop() : num =  3373\n",
            "infinite_loop() : num =  3374\n",
            "infinite_loop() : num =  3375\n",
            "infinite_loop() : num =  3376\n",
            "infinite_loop() : num =  3377\n",
            "infinite_loop() : num =  3378\n",
            "infinite_loop() : num =  3379\n",
            "infinite_loop() : num =  3380\n",
            "infinite_loop() : num =  3381\n",
            "infinite_loop() : num =  3382\n",
            "infinite_loop() : num =  3383\n",
            "infinite_loop() : num =  3384\n",
            "infinite_loop() : num =  "
          ]
        },
        {
          "output_type": "error",
          "ename": "KeyboardInterrupt",
          "evalue": "",
          "traceback": [
            "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
            "\u001b[0;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
            "\u001b[0;32m<ipython-input-10-4d16da1a3db1>\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      6\u001b[0m        \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"infinite_loop() : num = \"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnum\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      7\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 8\u001b[0;31m \u001b[0minfinite_loop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
            "\u001b[0;32m<ipython-input-10-4d16da1a3db1>\u001b[0m in \u001b[0;36minfinite_loop\u001b[0;34m()\u001b[0m\n\u001b[1;32m      4\u001b[0m        \u001b[0;31m#yield num   # with yield it become generator without yield its a infinite loop\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m        \u001b[0mnum\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 6\u001b[0;31m        \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"infinite_loop() : num = \"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnum\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      7\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      8\u001b[0m \u001b[0minfinite_loop\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;32m/usr/local/lib/python3.11/dist-packages/ipykernel/iostream.py\u001b[0m in \u001b[0;36mwrite\u001b[0;34m(self, string)\u001b[0m\n\u001b[1;32m    400\u001b[0m             \u001b[0mis_child\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;32mnot\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_is_master_process\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    401\u001b[0m             \u001b[0;31m# only touch the buffer in the IO thread to avoid races\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 402\u001b[0;31m             \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpub_thread\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mschedule\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;32mlambda\u001b[0m \u001b[0;34m:\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_buffer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstring\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    403\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mis_child\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    404\u001b[0m                 \u001b[0;31m# mp.Pool cannot be trusted to flush promptly (or ever),\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;32m/usr/local/lib/python3.11/dist-packages/ipykernel/iostream.py\u001b[0m in \u001b[0;36mschedule\u001b[0;34m(self, f)\u001b[0m\n\u001b[1;32m    201\u001b[0m             \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_events\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    202\u001b[0m             \u001b[0;31m# wake event thread (message content is ignored)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 203\u001b[0;31m             \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_event_pipe\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34mb''\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    204\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    205\u001b[0m             \u001b[0mf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;32m/usr/local/lib/python3.11/dist-packages/zmq/sugar/socket.py\u001b[0m in \u001b[0;36msend\u001b[0;34m(self, data, flags, copy, track, routing_id, group)\u001b[0m\n\u001b[1;32m    618\u001b[0m                 )\n\u001b[1;32m    619\u001b[0m             \u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgroup\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mgroup\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 620\u001b[0;31m         \u001b[0;32mreturn\u001b[0m \u001b[0msuper\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mflags\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mflags\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcopy\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mcopy\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtrack\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtrack\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    621\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    622\u001b[0m     def send_multipart(\n",
            "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Generator Expressions**\n",
        "Generator expressions are a concise way to create generators. They are similar to list comprehensions but use parentheses instead of square brackets.\n",
        "\n",
        "Example:"
      ],
      "metadata": {
        "id": "YODvwNb3oRzK"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "# Generator expression\n",
        "gen = (x * x for x in range(5))\n",
        "print(type(gen))\n",
        "\n",
        "# Iterate over the generator\n",
        "for value in gen:\n",
        "    print(value, \" : \", type(value))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "jlIR93kXoXLh",
        "outputId": "7d68cc1f-5a02-4886-d7d6-61411bfa8015"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "<class 'generator'>\n",
            "0  :  <class 'int'>\n",
            "1  :  <class 'int'>\n",
            "4  :  <class 'int'>\n",
            "9  :  <class 'int'>\n",
            "16  :  <class 'int'>\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "##**Recursive Function in Python**\n",
        "\n",
        "A **recursive function** is a function that calls itself during its execution. It breaks down a problem into smaller, more manageable subproblems, solving each one recursively until a **base case** is reached. The base case is the condition that stops the recursion, preventing infinite loops.\n"
      ],
      "metadata": {
        "id": "FW55QX91MSpf"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Key Components of a Recursive Function**\n",
        "\n",
        "*   **Base Case**: The condition that stops the recursion.\n",
        "*   **Recursive Case**: The part of the function where it calls itself with a modified input."
      ],
      "metadata": {
        "id": "xBJzrtcboq4J"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Example: Factorial of a Number**\n",
        "\n",
        "The factorial of a number n (denoted as n!) is the product of all positive integers from 1 to n. It can be defined recursively as:\n",
        "\n",
        "-   n! = n * (n-1)! (Recursive Case)\n",
        "-   0! = 1 (Base Case)"
      ],
      "metadata": {
        "id": "1aX4k7cvovUI"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def factorial(n):\n",
        "    # Base case\n",
        "    if n == 0:\n",
        "        return 1\n",
        "    # Recursive case\n",
        "    else:\n",
        "        return n * factorial(n - 1)\n",
        "\n",
        "# Example usage\n",
        "print(factorial(5))  # Output: 120"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "AztfBf3kpFCq",
        "outputId": "37bb7425-998c-4c2e-faa5-dc1e612542a7"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "120\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "**How It Works**\n",
        "\n",
        "1.  factorial(5) calls factorial(4).\n",
        "2.  factorial(4) calls factorial(3).\n",
        "3.  This continues until factorial(0) is called, which returns 1.\n",
        "4.  The results are propagated back up the chain:\n",
        "  -   1 * 1 = 1\n",
        "  -   2 * 1 = 2\n",
        "  -   3 * 2 = 6\n",
        "  -   4 * 6 = 24\n",
        "  -   5 * 24 = 120"
      ],
      "metadata": {
        "id": "F-wmgD__pTyZ"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Example: Fibonacci Sequence**\n",
        "\n",
        "The Fibonacci sequence is a series of numbers where each number is the sum of the two preceding ones: 0, 1, 1, 2, 3, 5, 8, 13, ..."
      ],
      "metadata": {
        "id": "rMDEJIUhp0pp"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def fibonacci(n):\n",
        "    # Base cases\n",
        "    if n == 0:\n",
        "        return 0\n",
        "    elif n == 1:\n",
        "        return 1\n",
        "    # Recursive case\n",
        "    else:\n",
        "        return fibonacci(n - 1) + fibonacci(n - 2)\n",
        "\n",
        "# Example usage\n",
        "print(fibonacci(6))  # Output: 8"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "Sv59FKi0p6V4",
        "outputId": "c66802f5-34ed-4e78-adbb-92bdaaf03c8f"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "8\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Advantages of Recursive Functions**\n",
        "\n",
        "1.    Simplifies Code: Breaks complex problems into smaller, easier-to-understand parts.\n",
        "2.    Elegant Solutions: Often provides a clean and concise solution for problems like tree traversals, sorting, and mathematical computations.\n",
        "3.    Natural Fit for Certain Problems: Works well for problems with recursive structures (e.g., factorial, Fibonacci, tree traversals)."
      ],
      "metadata": {
        "id": "I_yEGdCYqAeH"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Disadvantages of Recursive Functions**\n",
        "\n",
        "*   Stack Overflow: Deep recursion can lead to a stack overflow if the base case is not reached.\n",
        "*   Performance Issues: Recursive functions can be slower and use more memory compared to iterative solutions due to repeated function calls.\n",
        "*   Debugging Complexity: Recursive logic can be harder to debug and trace."
      ],
      "metadata": {
        "id": "-GmAtr__qLRg"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **When to Use Recursive Functions**\n",
        "\n",
        "* When the problem can be naturally divided into smaller subproblems.\n",
        "* When the depth of recursion is limited and won’t cause stack overflow.\n",
        "* For problems like tree traversals, divide-and-conquer algorithms, or mathematical sequences."
      ],
      "metadata": {
        "id": "aF0jKze1qUe_"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "By understanding and using recursion effectively, you can solve complex problems in a clean and elegant way!"
      ],
      "metadata": {
        "id": "g7USOJ0tqeAP"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "# prompt: generate an example of recursive function\n",
        "\n",
        "def factorial(n):\n",
        "  if n == 0:\n",
        "    return 1\n",
        "  else:\n",
        "    return n * factorial(n-1)\n",
        "\n",
        "number = 5\n",
        "result = factorial(number)\n",
        "print(f\"The factorial of {number} is {result}\")"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "p0oq1r4zMSKA",
        "outputId": "dae580a3-3765-4acb-be72-df8c9db1ad23"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "The factorial of 5 is 120\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Multi Type Return in Function**\n",
        "\n",
        "\n",
        "In Python, a function can return multiple values of different types by packaging them into a tuple, list, dictionary, or even a custom object. This is often referred to as a multi-type return. For example, a function can return an int, a list, and a dict together, providing flexibility in handling complex data. Type annotations (e.g., Tuple[int, List[str], Dict[str, int]]) can be used to specify the expected return types, making the code more readable and maintainable. Multi-type returns are useful when a function needs to provide diverse outputs, such as a status code, a list of results, and a dictionary of metadata, all in a single call."
      ],
      "metadata": {
        "id": "dniK91uIrZx2"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "def example_function(a: int, b: int = 0, *args: float, **kwargs: str) -> Tuple[int, List[float], Dict[str, str]]:\n",
        "    \"\"\"Example function demonstrating various parameter types.\n",
        "    Args:\n",
        "        a: An integer.\n",
        "        b: An integer with a default value of 0.\n",
        "        *args: Variable-length positional arguments of type float.\n",
        "        **kwargs: Variable-length keyword arguments of type string.\n",
        "    Returns:\n",
        "        A tuple containing:\n",
        "        - The sum of 'a' and 'b'.\n",
        "        - A list of the variable-length positional arguments ('args').\n",
        "        - A dictionary of the variable-length keyword arguments ('kwargs').\n",
        "    \"\"\"\n",
        "    sum_ab = a + b\n",
        "    args_list = list(args)  # Convert tuple to a list\n",
        "    return sum_ab, args_list, kwargs\n",
        "\n",
        "# Example usage\n",
        "result = example_function(1, 2, 3.14, 2.71, name=\"Alice\", city=\"New York\")\n",
        "print(result)\n",
        "\n",
        "result = example_function(10, *[1.0, 2.0, 3.0], **{\"country\": \"USA\", \"language\": \"English\"})\n",
        "result"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "3v5wkjlrYmkw",
        "outputId": "d4891718-2d62-4b91-bb17-80c4eef8bd57"
      },
      "execution_count": null,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "(3, [3.14, 2.71], {'name': 'Alice', 'city': 'New York'})\n"
          ]
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "(11.0, [2.0, 3.0], {'country': 'USA', 'language': 'English'})"
            ]
          },
          "metadata": {},
          "execution_count": 10
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "## **Order of args in function**"
      ],
      "metadata": {
        "id": "mlyFu307uLH8"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "![order_of_args_in_functions.jpg]()"
      ],
      "metadata": {
        "id": "bfKaEVkeuF-E"
      }
    },
    {
      "cell_type": "markdown",
      "source": [
        "\n",
        "\n",
        "---\n",
        "\n"
      ],
      "metadata": {
        "id": "Ud1IvaE7uZW7"
      }
    }
  ]
}